PHP'de Genel, Özel ve Korumalı Arasındaki Fark Nedir?

Php De Genel Ozel Ve Korumali Arasindaki Fark Nedir



PHP, dinamik web siteleri ve web uygulamaları geliştirmek için yaygın olarak kullanılır. PHP olarak bilinen anahtar kelimeler sağlar. erişim değiştiricileri . Erişim değiştirici özellikleri, değişken, sınıf veya sınıf özelliklerine aşağıdaki gibi üç farklı yoldan erişmek için kullanılır: halk , özel, Ve korumalı . Bu yazıda, bu erişim değiştiricileri ele alacağız ve PHP programlama dilinde bu üç erişim değiştirici arasındaki farkı belirleyeceğiz.

PHP'de Erişim Değiştiriciler nelerdir?

PHP'de erişim değiştiriciler önemlidir, çünkü kullanıcılara sınıf özniteliklerinin ve yöntemlerinin görünürlüğünü ve erişilebilirliğini düzenleme yeteneği verirler. Bunun sonucunda kapsülleme ve veri güvenliği sağlar ve bu sayede sınıf üyeleri yetkisiz erişim veya değişiklikten korunur. Ayrıca, kodun bakımını ve hata ayıklamayı kolaylaştırır.







Erişim Değiştirici Türleri

PHP'de bulunan üç erişim değiştirici aşağıda tartışılmaktadır:



  • Halk: Genel bir yönteme sınıfın dışından erişebilirsiniz. Bu, herhangi bir kodun genel bir yönteme erişebileceği, değiştirebileceği ve onu çağırabileceği anlamına gelir.
  • Özel: Özel yönteme erişmek, sınıfın kendisiyle sınırlıdır. Bu, bir alt sınıf olsa bile diğer kodların hiçbirinin özel bir yönteme erişmesine veya özel değeri okumasına izin verilmediği anlamına gelir.
  • Korumalı: Korumalı bir yönteme yalnızca bir sınıf ve onunla ilgili sınıflar içinde erişilebilir; bu sınıfların dışında kullanılamaz. Sınıf örneğine erişmesi gereken herhangi bir kaynak kodu, korumalı bir özelliğin verilerini okuyabilir veya değiştirebilir veya korumalı bir işlevi çağırabilir.

PHP'de Genel, Özel ve Korumalı Erişim Değiştiricileri Arasındaki Fark

Mülk Halk Özel Korumalı
Ulaşılabilirlik Bu erişim değiştiricilere, kodun içi ve dışı gibi herhangi bir yerden erişilebilir. Özel erişim belirleyicilerine yalnızca sınıf içinde erişilebilir. Sınıf ve onun ilgili (alt) sınıfları ve yöntemleri içinde erişilebilir olabilir.
Esneklik En fazla esneklik, her yerden erişilebildiği için kamu kaynakları tarafından sunulur. Yalnızca sınıf içinde erişilebilir olduklarından, bu yöntemler en az esnekliği sunar. Korumalı yöntem, alt sınıflar bu yöntemlere erişebildiğinden orta düzeyde esneklik sağlar.
kapsülleme Diğer kodlar genel yöntemlere erişebilir veya bunları kapsayabilir, ancak programcının bunun üzerinde denetimi vardır. Sınıfın içinde özel bir yöntem kapsüllenmiştir, bu da dış kodun bunlara erişmesini veya bunları güncellemesini imkansız hale getirir. Kapsülleme işlemi, PHP'deki genel yöntemle aynıdır.
Güvenlik Genel yöntemlere her yerden erişilebilir. Bu nedenle, kodda düşük düzeyde güvenlik sağlarlar. Maksimum güvenlik düzeyi, özel erişim değiştiricileri tarafından sağlanır, çünkü bunlar tamamen sınıf içinde yer alır. Yalnızca sınıfın üyeleri ve alt sınıfları tarafından erişilebildiğinden, korumalı erişim değiştiricileri makul bir güvenlik düzeyi sunar.

PHP'de basit bir program örneği kullanarak bu erişim belirteçleri arasındaki farkı görelim.



Örnek: Özel, Genel ve Korumalı Erişim Değiştiricileri Olan PHP Programı





Aşağıdaki örnek, bir örnek kodda genel, özel ve korumalı arasındaki farkı gösterir:

< ?php
sınıf Benim Sınıfım {
halk $kamu = 'Genel değişken. \N ' ; // Her yerden erişilebilir
özel $özel = 'Özel değişken. \N ' ; // Yalnızca sınıf içinden erişilebilir
korumalı $ korumalı = 'Korumalı değişken.' ; // Sınıf ve herhangi bir alt sınıf içinden erişilebilir

halk işlev getPrivate ( ) {
geri dönmek $bu - > özel;
}

halk işlev Koruma altına alın ( ) {
geri dönmek $bu - > korumalı;
}
}
$nesne = yeni Sınıfım ( ) ;

Eko $nesne - > halk;
Eko $nesne - > getPrivate ( ) ;
Eko $nesne - > Koruma altına alın ( ) ;
? >



Yukarıdaki programda, bir sınıfı şu şekilde tanımladık: Sınıfım olarak kamu malı olan $kamu kodun herhangi bir yerine erişebilen, özel bir mülk olarak $özel ve adlı korumalı bir özellik $ korumalı , dolayısıyla özel ve korumalı belirticilere doğrudan sınıfın dışından erişemeyiz. Adı verilen iki genel yöntem kullandığımız için getPrivate() Ve getProtected() Sırasıyla özel ve korumalı özellik değişkenlerinin değerlerini döndüren ve çıktı aşağıda verilen:

Çözüm

PHP birçok işlevsellik sunar ve bunlardan biri erişim değiştiricileri adı verilen anahtar kelimelerdir. Bu erişim değiştiriciler, PHP programındaki sınıfların verilerine farklı erişim modelleri sağlar. Yukarıdaki öğreticide, PHP'de sunulan erişilebilirlik, kapsülleme, esneklik ve güvenlik açısından erişim değiştiricileri arasındaki farkı gördük.