|
導讀網頁的本質就是超級文本標記語言,通過結合使用其他的Web技術(如:腳本語言、公共網關接口、組件等),可以創造出功能強大的網頁。因而,超級文本標記語言是萬維網(Web)編程的基礎,也就是說萬維網是建立... 網頁的本質就是超級文本標記語言,通過結合使用其他的Web技術(如:腳本語言、公共網關接口、組件等),可以創造出功能強大的網頁。因而,超級文本標記語言是萬維網(Web)編程的基礎,也就是說萬維網是建立在超文本基礎之上的。超級文本標記語言之所以稱為超文本標記語言,是因為文本中包含了所謂“超級鏈接”點。 本篇文章給大家帶來的內容是關于php中對屬性或方法的訪問控制的介紹(代碼示例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。
PHP中對屬性或方法的訪問控制,是通過在前面添加關鍵字public(公有)、protected(受保護)或 private(私有)來實現的。被定義為public的類成員可以在任何地方被訪問,被定義為protected的類成員則可以被其自身以及其子類和父類訪問。被定義為private的類成員則只能被其定義所在的類訪問。 類屬性必須定義為public、protected或private。如果用var定義,則被視為public。子類可以修改基類public和protected的屬性的值。 <?php
class A{
var $a="a";
protected $b="b";
private $c="c";
function printVar(){
echo $this->a.";".$this->b.";".$this->c.";"."\n";
}
}
class B extends A{
public $a="aa";
protected $b="bb";
private $c="cc";
}
$a=new A();
$a->printVar();
$b=new B();
$b->printVar();
?>類的必須定義為public、protected或private。如果未指定則視為public。子類可以覆蓋基類public和protected的函數。 <?php
class A{
public function fa(){
echo "A->fa\n";
}
protected function fb(){
echo "A->fb\n";
}
private function fc(){
echo "A->fc\n";
}
function showFoo(){
$this->fa();
$this->fb();
$this->fc();
}
}
class B extends A{
function fa(){
echo "B->fa\n";
}
protected function fb(){
echo "B->fb\n";
}
private function fc(){
echo "B->fc\n";
}
}
$a=new A();
$a->showFoo();
$b=new B();
$b->showFoo();
?>同一個類的對象,即使不是同一個實例也可以互相訪問對方的私有與受保護成員,因為這些對象的內部具體實現的細節都是已知的。 <?php
class A
{
private $a;
public function __construct($a)
{
$this->a = $a;
}
private function fa()
{
echo 'private method fa.';
}
public function foo(A $other,$v)
{
$other->a = $v;
var_dump($other->a);
$other->fa();
}
}
$a = new A('a');
$aa=new A('aa');
$a->foo($aa,'newA');
?>以上就是php中對屬性或方法的訪問控制的介紹(代碼示例)的詳細內容,更多請關注php中文網其它相關文章! 網站建設是一個廣義的術語,涵蓋了許多不同的技能和學科中所使用的生產和維護的網站。 |
溫馨提示:喜歡本站的話,請收藏一下本站!