PHP Class (Sınıf) Kullanımı

OOP yazılımın en önemli konularından biri olan ve küçük, büyük, kurumsal projeler farketmeksizin tüm projelerde kullanılarak bir mimari oluşturmaya yarar.

OOP kapsamınca birçok farklı terimden söz etmek mümkündür. Bunlardan biri de class terimidir. Class, sınıf anlamına gelen ve nesnelerden oluşan geniş çaplı kod kombinasyonudur. PHP’de de Class kullanımı oldukça yaygındır.

Nesne yönelimli programlamada nesneler sınıfın özelliklerini barındıran küçük yapı taşları olarak nitelendirilir. Class’lar oluşturulurken, yani sınıflar tasarlanırken çeşitli nesnelerin özellikleri ve metotları da bir arada toplanır. Sınıflar, metod ve özelliklerin bir araya gelmesiyle oluşur.

OOP temelli programlama dillerinde class yapıları oluşturularak projenin bir mimari etrafında şekillendirilmesi de mümkün olabilir.

PHP programlama dili de yine OOP’yi destekleyen programlama dillerinden biridir. PHP’de class yapıları birbiriyle ilişkili fonksiyon ve değişkenlerin bir arada tutulduğu yapılardır.

Sınıfların tanımlanmasıyla birlikte kodların daha anlaşılır olması ve sistematik bir çerçeve çizilmesi de sağlanır. PHP’de classlar metod yani fonksiyon ve özellik yani değişken olmak üzere iki temel üyeye sahiptir.

Özellikler ve metotlar birbiriyle ilişkili olacak şekilde tasarlanarak sınıfların avantajlarından yararlanılabilir.

PHP Class Yapısı Nedir?

PHP’de sınıflar birçok fonksiyonun bir düzene göre bir arada olduğu yapılar olarak açıklanabilir. Sınıflar belirli olay ya da konuların fonksiyonlarını içerir. Örneğin bir üyelik sistemi ya da alışveriş sistemi gibi projelerde OOP kurallarına uyulması son derece önemlidir. 

PHP’de sınıf tanımlarken class anahtar sözcüğü kullanılmaktadır. Sınıf isminin ayırt edilebilmesi için ise genellikle büyük harfle başlaması önerilir. 

PHP Class yapısının kullanımına örnek aşağıdaki gibidir:

<?php 
class Kisi
{
// özellikler
public $isim;
public $yas;
public $mail;
public $telefonNo;
}
?>

Örnekte Kisi isminde bir class tanımlaması yapılmış olup içerisine public erişim belirteci ile dört adet değişken eklenmiştir. 

PHP Class içinde Fonksiyon Çağırma

PHP’de tanımlanan classlar içerisinde fonksiyonların da çağrılmasıyla alakalı olarak örnekler verelim.

Örnek 1:

<?php 
class Telefon
{
public $marka;
public $fiyat;
public $boyut;

public function yazdir()
{
echo $this->marka . ' marka telefonun fiyatı : ' . $this->fiyat;
}
}
$telefon = new Telefon();
$telefon->marka = "A";
$telefon->fiyat = 10000;
$telefon->yazdir(); // ekrana A marka telefonun fiyatı : 10000 yazar
?>

Telefon adında bir sınıf oluşturulmuş ve içerisine sırasıyla marka, fiyat ve boyut olmak üzere üç tane özellik atanmıştır. yazdir ismindeki fonksiyonda ise özelliklerden dönen değer ekrana yazdırılmak istenmiştir.

PHP’de class tanımlamalarının ardından nesne oluşturulurken dikkat edilmesi gereken bazı hususlar vardır. Bunlardan biri oluşturulan nesneye özellik değeri atandığında özelliğin başında $ olmamasına dikkat edilmesi gerekir.

Örnekte görüldüğü üzere “$telefon->marka” atanması yapılırken marka özelliğinin önünde $ işareti konulmamıştır.

PHP Class Yapısı Kod Örnekleri

Class yapısı birçok kod mimarisi için olmazsa olmaz bir kod yapısıdır. Temel ve basit örneklerle Class yapısını nasıl kullanabileceğinizi bu örneklerle açıklayalım.

Örnek 1:

<?php 
class Alisveris
{
public $urunAdi;
public $fiyat;

public function al($urunAdi, $fiyat)
{
$this->urunAdi = $urunAdi;
$this->fiyat = $fiyat;
}

public function listele()
{
echo 'Ürün adı : '. $this->urunAdi. ' fiyat : '. $this->fiyat;
}
}
$alisveris = new Alisveris();
$alisveris->al("Bilgisayar", 15000);
$alisveris->listele(); // Ekrana Ürün adı : Bilgisayar fiyat : 15000 yazar
?>

Örnek 2:

<?php
class Ogrenci 
{
private $isim;

public function isimAl($isim)
{
$this->isim = $isim;
}

public function isimYaz()
{
echo $this->isim;
}
}
$ogrenci = new Ogrenci();
$ogrenci->isimAl("Emre");
$ogrenci->isimYaz(); // Ekrana Emre yazar

?>

Örnekte sınıf içerisinde değişkenin erişim belirteci private’dir. Private ile birlikte değişkenin dışarıya erişimi engellenmiştir. isimAl fonksiyonu public erişim belirtecine sahip olup dışarıya erişime açıktır. Dolayısıyla fonksiyonlar üzerinden $isim değişkenine erişim sağlanabilir.

Örnek 3:

<?php
class Araba{
private $hiz;
private $renk;

public function okuHiz(){
return $this->hiz;
}

public function duzenleHiz($hiz) {
$this->hiz = $hiz;
}

public function okuRenk(){
return $this->renk;
}
public function duzenleRenk($renk){
$this->renk =$renk;
}
}

$araba = new araba();
$araba->duzenleHiz(120);

echo "Arabanın Hızı :".$araba->okuHiz();
echo "\n";

$araba->duzenleRenk("Siyah");
echo "Arabanın rengi:".$araba->okuRenk();
?>

Çıktı

Arabanın Hızı :120
Arabanın rengi:Siyah

Nesneye yönelimli programlamanın temelinde get ve set metotları vardır. Bu iki kavram Getter ve Setter olarak farklı programlama dillerinde karşımıza çıkabilir.

Get işlemi  ile değerlerin okunması işlemi yapılırken set işlemi ile değerler üzerinde değişiklikler yapılabilir. Örnek 3’te görüldüğü üzere okuHiz metodu aslında Get’i, duzenleHiz ile de hız değerinin değiştirilmesi sağlanabilir.

OOP, nesne yönelimli programlama kendi içerisinde çok derin bir konudur. OOP programlamada en önemli konulardan biri olan class tanımlaması, nesne tanımlaması ve tanımlamaların çağrılarak kullanılması gibi işlemlerin PHP programlama dilinde kullanımı genel olarak bu şekildedir.

PHP programlama dili de OOP’yi destekleyen programlama dili olup büyük çaplı projelerde kavram bütünlüğünün sağlanması, daha temiz ve okunabilir kodların yazılması, tekrarlı kodların önlenmesi gibi durumların oluşturulması için class yapılarına fazlasıyla ihtiyaç duyulmaktadır.

Kategoriler PHP

Yorum yapın