Arama butonu
Bu konudaki kullanıcılar: 1 misafir
5
Cevap
951
Tıklama
0
Öne Çıkarma
Phpde Sınıf Yapısı Giriş
Z
16 yıl
Teğmen
Konu Sahibi

Arkadaşlar bu dökümanda php de class yapısını anlatmak istiyorum.Bir kaç haftadır arada bir bakıyordum, anlamaya çalışıyordum fakat yenilere göre bir döküman maalesef yok.Bu döküman umut ediyorum ki yeniler için tam olacaktır !!

Şimdi başlayalım; ekrana TarcanBlog yazdıralım ;
<?php 
class test{
private $yazi = 'TarcanBlog';
function yaz(){
return $this->yazi;
}
}
$sinif = new test;
echo $sinif->yaz();
?>


Burada ne yaptığımızı açıklayarak gidelim ;

-> class test diyerek test sınıfımızı oluşturduk,
-> private $yazi = 'TarcanBlog'; yazarak sınıf içindeki yazi değişkenini oluşturup değer atadık.Burda private dersek class dışında değer veremeyiz.Bir sonraki örnekte değer vermeyide göreceğiz bunun için public kullanmalıyız,
-> function yaz() diyerek yaz fonksiyonunu tanımladık.return döndür demek, $this bu class içinde demek, $this->yazi dedik.Yani bulunduğu class içindeki yazi değişkenini döndürdük.Burda dikkat etmeniz gereken nokta $this-> ten sonra $yazi değil yazi yazdık.Dolar işareti koymadık.
-> $sinif = new test; diyerel $sinif değişkenine test sınıfını atadık.
-> $sinif->yaz() diyerek classtaki yaz fonksiyonunu bastırdık.Fonksiyon ne diyordu ? sınıftaki yazi değişkenini döndür.echo diyerek bunu ekrana atadık.Şimdi sınıf dışında $yazi tanımlayalım;

<?php 
class test{
public $yazi = 'TarcanBlog';
function yaz(){
return $this->yazi;
}
}
$sinif = new test;
$sinif->yazi = 'selam naber';
echo $sinif->yaz();
?>



evet burada $sinif->yazi diyerek test sınıfındai yazi değişkenini selam naber 'e eşitledik.Daha sonra yaz(); fonksiyonunu çağırdık.Bu döküman size mantığını vermek amacıyla yazıldı.Tabi mantıktan öte pratiklik farklı birşey..Şimdi pratik halde ekrana yazdıralım (fonksyion falan uğraşmadan);

<?php 
class test{
private $yazi = 'TarcanBlog';
}
$sinif = new test;
echo $sinif->yazi;
?>



Burada gördüğünüz gibi class içinde yine private diyerek yazi değişkenini tanımladık.Daha sonra $sinif = new test; diyerek $sinif değişkenine test sınıfını atadık.Fakat daha sonra echo $sinif->yazi; diyerek hiç uğraşmadan ekrana test sınıfındaki yazi değişkenini bastır dedik.Farklı birşey yapalım hiç echo $sinif->yazi; kullanmadan direkt olarak ekrana merhaba yazdıralım.Bunun için; function __construct() kullanırız.Bu class çalıştırıldığında ekrana bastırılır

class test{ 
public function __construct() {
echo 'merahaba';
}
}
$sinif = new test;



----

Evet ilk girişi vermek istedim.Aslına bakarsanız bunlardan farklı birşey yapmıyoruz.Fonksyionları kullanıyoruz, classları ekliyoruz.Fonksiyonlar zaten işin baş mantığıdır.

Sonuç olarak bende çok araştırmıştım, giriş seviyesinde bir döküman olduğuna inanıyorum.Devamı gelecektir.not: (kendi blogumda yazmıştım direkt c/p yaptım isteyen istediği yerde istediği gibi kullanabilir TarcanBlog)

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi zumsuk -- 4 Kasım 2009; 8:08:04 >

T
16 yıl
Binbaşı

bu arada belirtmek gerek $this 'sözde' değişkeni yenden atanabilen yani reassignment özelliği olan bi değişken değildir. yani;

 
$sinif = new test();

//demek yerine kesinlikle

$this= new test();

/*
**ataması yapmaya çalışmayın. can not reassign $this şeklinde bi uyarı alırsınız.
**unset fonksiyonunu da yemeyen bir değişkendir.
*/

zamanında çok başı ağrımış birisi olarak değinmek istedim :) hala da sınıf yapısını çok iyi kavrayabilmiş değilim. anlatım güzel olmuş eline sağlık.



O
16 yıl
Yüzbaşı

class tam olarak ne için kullanılır , ne işe yarar ?

Bunu anlasam gerisi inş kolay

Teşekkürler...



O
16 yıl
Yüzbaşı

Sağolun öğrendim .

Paylaşıyım herkes öğrensin :


Büyük projler ve güvenlik için kullanılırmış. Gayet mantıklı bizi işten atsa patronumuz ,Yerimize gelen programcı

yarım bıraktığımız programın içinden çıkamaz vs. Bu sebeple Prof. olanlar class ile php kodlarını yazıyorlarmış .


Bu mesaja 1 cevap geldi.
M
16 yıl
Çavuş

cok teşekkür ediyorum paylaşımınız için ve parent php5 de nesne yönelimlide büyük yer tutmakta onada değinirseniz sevinirim


Bu mesaja 1 cevap geldi.
O
16 yıl
Yarbay

Class Kullanımı çok önemli bir konu. günümüz programcılığında oluşturulan karmaşık yapılardan sıyrılmanın nerdeyse tek yolu bu.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.