1. 程式人生 > >PHP中的符號 ->、=> 和 :: 的含義(用法)

PHP中的符號 ->、=> 和 :: 的含義(用法)

php新手經常碰到的問題,->、=> 和 :: 這三個傢伙是什麼分別都是做什麼的啊!看著就很暈。

沒關係,下面我們做一下詳細的解釋,如果你有C++,Perl基礎,你會發現這些傢伙和他們裡面的一些符號功能是差不多的。

‘- >’符號是“插入式解引用操作符”(infix dereference operator)。換句話說,它是呼叫由引用傳遞引數的子程式的方法(當然,還有其它的作用)。正如我們上面所提到的,在呼叫PHP的函式的時候,大部分引數都是通過引用傳遞的。PHP中的‘->’功能就和它們在Perl或C++中一樣。下面是一個簡單的解引用的例子:

  echo $x->def(); # 輸出

  

  在PHP的指令碼中‘=>’操作符時很常見的。因為php陣列函式很豐富,我們要經常用到陣列,因為它操作資料很方便。
  $phparr= new array( in => 'reply,'

  side => 'left',

  padx => 2m,

  pady => 2m,

  ipadx => 2m,

  ipady => 1m

  )

  順便說一下,如果你需要用數字“大於等於”的符號,你應該用“>=”而不是“=>”。

     在PHP中“::”這個叫範圍解析操作符,又名域運算子  

     “::”符號可以認為是與C語言中的“.”相似的,而它更像C++中(Perl)的::類範圍操作符。

      php呼叫類的內部靜態成員,或者是類之間呼叫就要用::

    下面是一個例子:
      class A
   {
       static $count = 0;
        static function haha()
       {
           //
        }  
       function diaoyoug()
     {
          self::haha();
        self::$count;
       }
   }

  a.b.c; /* C語言中的 */

  a::b::c(); // C++ 中的函式

  $a::b::c; # Perl 5中的標量

 

 

“===”(三等號)
或許有人就疑問了,此符號除了判斷兩變數是否相等外,還會判斷值型別是否一致,若值型別不一樣,則會返回False,比如:$a="1";//字元型1 $b=1;//數字型1  當執行$a===$b;時,將返回False

“->”(減號、右尖括號)
用於類中,訪問類裡的函式或物件,比如:
<?php class Test { function do_test() { echo "Doing foo."; } } $bar = new Test; $bar->do_test(); ?>

"=>"(等號、右尖括號)
陣列中給值賦值,比如:$arr=array("one" =>("1"=>10, "2"=>20), "two"=>2); 那麼$arr["one"]["1"]=10;