PHP self nedir?

533388

Hectopat
Katılım
27 Mart 2022
Mesajlar
4.436
Makaleler
2
Çözümler
54
Anladığım kadarıyla static bir değişken oluşturduğumuzda ve bunu bir fonksiyon içinde kullandığımızda this anahtar kelimesi gibi değişkenin belirtildiği sınıfa ait olduğunu söylüyor, doğru mudur? Ve statik değişkenlerin değerlerini sonradan değiştiremiyorum değil mi?
 
self static üyelere erişmek için, kullanılan sınıfa static bir referans.

Örnek;
PHP:
class A {
    public $non_static_member = "Member";
    public static $static_member = "Static member";
   
    function __construct() {
        echo self::$static_member;
        echo $this->non_static_member;
    }
}

A::$static_member;
(new A())->non_static_member;

$this mevcut başlatılmış nesneye bir referans, self[/CODE] ise sınıfın kendisine, objeye değil.
 
self static üyelere erişmek için, kullanılan sınıfa static bir referans.

Örnek;
PHP:
class A {
 public $non_static_member = "Member";
 public static $static_member = "Static member";

 function __construct() {
 echo self::$static_member;
 echo $this->non_static_member;
 }
}

A::$static_member;
(new A())->non_static_member;

$this mevcut başlatılmış nesneye bir referans, self[/CODE] ise sınıfın kendisine, objeye değil.

Ya hocam ben bu bilgileri hiçbir yerde bulamıyorum, gerek Türkçe gerek İngilizce birkaç kanala ve siteye baktım bu bilgilere ulaşamadım, nereden OOP'yi ve başka şeyleri güzelce öğrenirim. BTK Akademi'ye ve W3schoolsa baktım ama bu konular hiç işlenmiyordu.
 
Ya hocam ben bu bilgileri hiçbir yerde bulamıyorum, gerek Türkçe gerek İngilizce birkaç kanala ve siteye baktım bu bilgilere ulaşamadım, nereden OOP'yi ve başka şeyleri güzelce öğrenirim. BTK Akademi'ye ve W3schoolsa baktım ama bu konular hiç işlenmiyordu.
OOP farklı, bu tarz keywordler farklı. Her dil farklı işliyor. self python'da nesnenin kendisine referans mesela. OOP'un temel prensiplerinden sonrası dillerin OOP'u nasıl implemente ettiklerine göre değişir.
 
OOP'un temel prensiplerinden sonrası dillerin OOP'u nasıl implemente ettiklerine göre değişir.

PHP'de OOP'nin temelleri olarak şunları öğrendim: Miras alma, getter ve setterlar, erişim belirleyiciler ve statikler. Yeterli olur mu?
Bir de kaynak önerisi istemiştim sizden size zahmet siz öğrenirken neleri kullandınız söyler misiniz?
 
PHP'de OOP'nin temelleri olarak şunları öğrendim: Miras alma, getter ve setterlar, erişim belirleyiciler ve statikler. Yeterli olur mu?
Bir de kaynak önerisi istemiştim sizden size zahmet siz öğrenirken neleri kullandınız söyler misiniz?
Ben okulda öğreniyorum veya dökümantasyon kullanıyorum.

OOP ise jenerik bir bilgi. Yani bir konsept. Konsepti bilmen gerek. Dile özel OOP gibi bir şey yok. Dediğim gibi konsept aynı implementasyon farkları var.
 
Ben okulda öğreniyorum veya dokümantasyon kullanıyorum.

OOP ise jenerik bir bilgi. Yani bir konsept. Konsepti bilmen gerek. Dile özel OOP gibi bir şey yok. Dediğim gibi konsept aynı implementasyon farkları var.

Hocam rica etsem hangi okul oldugunu veya kac binle girdiginizi soyler misiniz, merak ettim de?
 
Hocam rica etsem hangi okul oldugunu veya kac binle girdiginizi soyler misiniz, merak ettim de?
Daha öncede sordun. Birden fazla kez. Okuduğum okul iyi bir okul değil ve çok iyi puanla girmedim. En büyük pişmanlığım da lise dönemime dair, okula daha iyi çalışmamış olmak. Öğrenci profili berbat okulun. Yinede bu öğrenci profiline fazla gelecek hocalarım var. Konu üzerinde yeterince tecrübeli ve ilgili. Onlardan öğreniyorum sora sora.
 
Daha önce de sordun. Birden fazla kez. Okuduğum okul iyi bir okul değil ve çok iyi puanla girmedim. En büyük pişmanlığım da lise dönemime dair, okula daha iyi çalışmamış olmak. Öğrenci profili berbat okulun. Yine de bu öğrenci profiline fazla gelecek hocalarım var. Konu üzerinde yeterince tecrübeli ve ilgili. Onlardan öğreniyorum sora sora.

Hocam evet sormustum ama madem iyi bir okul degil ama siz bilgilisiniz, kendiniz mi yetistiniz yoksa okul mu buyuk rol oynadi burada onu merak ediyorum. Cunku ben de ortalama bir ogrenciyim cok iyi bir okula gidecgimi dusunmuyorum.
 
Hocam evet sormustum ama madem iyi bir okul degil ama siz bilgilisiniz, kendiniz mi yetistiniz yoksa okul mu buyuk rol oynadi burada onu merak ediyorum. Cunku ben de ortalama bir ogrenciyim cok iyi bir okula gidecgimi dusunmuyorum.
Okul rol oynadı. Ama okul tek başına bir rol oynamıyor. Sen öğrenmek istemezsen, adım atmazsan, hiç bir anlamı yok. Beni bilgili görüyorsun mesela. Benimle aynı okulda okuyan arkadaşlarımın bazıları basit bir hesap makinesi bile yazamayacak durumdalar. Bazıları da beni beşe katlar bilgi ve tecrübe konusunda.

Okulun rolü şöyle oluyor, ortamdaki herkesin amacı(*) yazılım öğrenmek. Dolayısıyla kendini sürekli konu üstüne vakit harcarken görüyorsun. Okul ödevler, projeler veriyor, derslere gidiyorsun, sürekli hemhalsin. Üzerine iyi hocan veya bilgili arkadaşların olduğunda gelişim sağlaman için muhteşem bir ortam. En büyük pişmanlığımın kötü bir okul olmasının sebebi de bu. Bu okuldaki öğrenci profili çok kötü olmasına rağmen arada çıkan bu bir iki kişiyle bu hale gelebiliyorsam, benzeri emeği daha iyi bir okulda verdiğimde sağlayacağım gelişim nasıl olurdu sorusu geliyor kafama.
* Gerçekten okumaya gelenlerden bahsediyorum.
 

Geri
Yukarı