class-abstraction

Sınıfı Olmayan Genel Kavramlar Soyut Olarak Tanımlanır.
Soyut Bir Kavram Genel Anlamda Sınıflara Ve Nesnelere İşaret Edebilir.
Soyut Olarak Tanımlanan Methodların Gövdeleri Yazılmaz.
<?php
abstract class haberler
{
public function __construct()
{
$this->db = @new mysqli('localhost', 'root', '', 'deneme');
if ($this->db->connect_errno)
die("Hata:" . $this->db->connect_error);
$this->db->set_charset('utf8');
}
public function sorgu($tablo, $limit = 10)
{
$sorgu = $this->db->query("SELECT * FROM $tablo ORDER BY id DESC limit $limit");
while ($row = $sorgu->fetch_assoc()) {
$kayit[] = $row;
}
return $kayit;
}
// soyut metotların gövdeleri yazılmaz(süslü parentezler).
public abstract function parametre($tablo, $limit);
public abstract function ozet();
}
?>
<?php
class spor extends haberler
{
public function __construct()
{
parent::__construct();
}
public function parametre($tablo, $limit = 10)
{
$this->sonuclar = $this->sorgu($tablo, $limit);
}
public function ozet()
{
foreach ($this->sonuclar as $sira => $bilgi) {
echo '<h3>' . $bilgi['baslik'] . '</h3>';
echo $bilgi['icerik'];
}
}
public function detay()
{
echo 'spor detay';
}
}
/*sınıfımızı çağırıp parametre metoduna spor tablosoun adını ve görüntülemek istediğimiz kaydın id numarasını yazalım*/
$spor = new spor();
$spor->parametre("spor", 3);

/*ozet metodu, parametre metodundan dönen nesneden foreach ile kayıt sonuçlarını elde edecektir.*/
$spor->ozet();
?>