來源:u012767263 發(fā)布時間:2018-06-30 17:27:53 閱讀量:828
講完了php基礎(chǔ)運算符,下面再講一下,php新手經(jīng)常碰到的問題,->、=> 和 :: 這三個家伙是什么分別都是做什么的啊!看著就很暈。
沒關(guān)系,下面我們做一下詳細的解釋,如果你有C++,Perl基礎(chǔ),你會發(fā)現(xiàn)這些家伙和他們里面的一些符號功能是差不多的。
‘- >’符號是“插入式解引用操作符”(infix dereference operator)。換句話說,它是調(diào)用由引用傳遞參數(shù)的子程序的方法(當然,還有其它的作用)。正如我們上面所提到的,在調(diào)用PHP的函數(shù)的時候,大部分參數(shù)都是通過引用傳遞的。PHP中的‘->’功能就和它們在Perl或C++中一樣。下面是一個簡單的解引用的例子:
echo $x->def(); # 輸出
在PHP的腳本中‘=>’操作符時很常見的。因為php數(shù)組函數(shù)很豐富,我們要經(jīng)常用到數(shù)組,因為它操作數(shù)據(jù)很方便。
$phparr= new array( in => 'reply,'
side => 'left',
padx => 2m,
pady => 2m,
ipadx => 2m,
ipady => 1m
)
順便說一下,如果你需要用數(shù)字“大于等于”的符號,你應該用“>=”而不是“=>”。
在PHP中“::”這個叫范圍解析操作符,又名域運算符
“::”符號可以認為是與C語言中的“.”相似的,而它更像C++中(Perl)的::類范圍操作符。
php調(diào)用類的內(nèi)部靜態(tài)成員,或者是類之間調(diào)用就要用::
下面是一個例子:
class A
{
static $count = 0;
static function haha()
{
//
}
function diaoyoug()
{
self::haha();
self::$count;
}
}
a.b.c; /* C語言中的 */
a::b::c(); // C++ 中的函數(shù)
$a::b::c; # Perl 5中的標量
“===”(三等號)
或許有人就疑問了,此符號除了判斷兩變量是否相等外,還會判斷值類型是否一致,若值類型不一樣,則會返回False,比如:$a="1";//字符型1 $b=1;//數(shù)字型1 當執(zhí)行$a===$b;時,將返回False
“->”(減號、右尖括號)
用于類中,訪問類里的函數(shù)或?qū)ο螅热纾?br style="box-sizing: border-box; outline: 0px; word-break: break-all;"/><?php class Test { function do_test() { echo "Doing foo."; } } $bar = new Test; $bar->do_test(); ?>
"=>"(等號、右尖括號)
數(shù)組中給值賦值,比如:$arr=array("one" =>("1"=>10, "2"=>20), "two"=>2); 那么$arr["one"]["1"]=10;