欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP的范圍解析操作符(::)的含義分析說(shuō)明

 更新時(shí)間:2011年07月03日 22:21:03   作者:  
今天看到幾個(gè)有關(guān)PHP的符號(hào)。一個(gè)是@,這個(gè)加在一個(gè)變量的前面,是為了抑制PHP解釋器報(bào)錯(cuò),也就是說(shuō)即使出了錯(cuò)也不會(huì)顯示出來(lái)。
今天看到幾個(gè)有關(guān)PHP的符號(hào)。一個(gè)是@,這個(gè)加在一個(gè)變量的前面,是為了抑制PHP解釋器報(bào)錯(cuò),也就是說(shuō)即使出了錯(cuò)也不會(huì)顯示出來(lái)。
還有一個(gè)更重要的符號(hào)PHP的范圍解析操作符(::)
在沒(méi)有聲明任何實(shí)例的情況下訪問(wèn)類中的函數(shù)或者基類中的函數(shù)和變量很有用處。而 :: 運(yùn)算符即用于此情況。
復(fù)制代碼 代碼如下:

<?php
class A {
function example() {
echo "I am the original function A::example().<br />\n";
}
}
class B extends A {
function example() {
echo "I am the redefined function B::example().<br />\n";
A::example();
}
}
// A 類沒(méi)有對(duì)象,這將輸出
// I am the original function A::example().<br />
A::example();
// 建立一個(gè) B 類的對(duì)象
$b = new B;
// 這將輸出
// I am the redefined function B::example().<br />
// I am the original function A::example().<br />
$b->example();
?>

上面的例子調(diào)用了 A 類的函數(shù) example(),但是這里并不存在 A 類的對(duì)象,因此不能這樣用 $a->example() 或者類似的方法調(diào)用 example()。反而我們將 example() 作為一個(gè)類函數(shù)來(lái)調(diào)用,也就是說(shuō),作為一個(gè)類自身的函數(shù)來(lái)調(diào)用,而不是這個(gè)類的任何對(duì)象。
這里有類函數(shù),但沒(méi)有類的變量。實(shí)際上,在調(diào)用函數(shù)時(shí)完全沒(méi)有任何對(duì)象。因而一個(gè)類的函數(shù)可以不使用任何對(duì)象(但可以使用局部或者全局變量),并且可以根本不使用 $this 變量。
上面的例子中,類 B 重新定義了函數(shù) example()。A 類中原始定義的函數(shù) example() 將被屏蔽并且不再生效,除非使用 :: 運(yùn)算符來(lái)訪問(wèn) A 類中的 example() 函數(shù)。如:A::example()(實(shí)際上,應(yīng)該寫為 parent::example(),下一章介紹該內(nèi)容)。
就此而論,對(duì)于當(dāng)前對(duì)象,它可能有對(duì)象變量。因此可以在對(duì)象函數(shù)的內(nèi)部使用 $this 和對(duì)象變量。

相關(guān)文章

最新評(píng)論