前幾天在百度知道里面看到有人問PHP中雙冒號::的用法,當時給他的回答比較簡潔因為手機打字不大方便!今天突然想起來,所以在這里總結一下我遇到的雙冒號::在PHP中使用的情況!
[圖片上傳中...(image-1cb543-1600405774528-0)]
** 一,當調用靜態(tài)屬性和靜態(tài)方法時**
::與->的作用相同,只不過使用的對象不一樣!::引用類里面的靜態(tài)方法或者屬性,而且不需要實例化!
建立一個類,并且建立一個靜態(tài)屬性$a,一個靜態(tài)方法b,如下:
class test { static public $a; static public function b() {}}
如果要調用靜態(tài)屬性$a,如下
test::$a;
注意,a前面需要帶$符號,這一點與->符號不一樣!
如果要調用靜態(tài)方法b,如下
test::b();
**二,**當調用自身類或者父類的屬性或者方法時
首先建立一個父類
class test { public function b() {}}
然后建立一個子類繼承父類
class tests extends test { public function cs() {}}
當我們需要調用父類的方法b時
parent::b();
當我們需要調用自身的方法cs時,有兩種方法
$this->cs();
self::cs();
我遇到的大概就是以上兩種情況