PHP中self 和 this 的用法

2021-10-08 17:34:15 字數 297 閱讀 9585

在訪問php類中的成員變數或方法時,

1.類外部呼叫:

如果被引用的變數或者方法被宣告成const(定義常量)或者static(宣告靜態),那麼就必須使用操作符::

反之如果被引用的變數或者方法沒有被宣告成const或者static,那麼就必須使用操作符->

2.類內部呼叫:

如果從類的內部訪問const或者static變數或者方法,那麼就必須使用自引用的self::

反之如果從類的內部訪問不為const或者static變數或者方法,那麼就必須使用自引用的$this->

出處:

PHP中self和this的用法區別

php支援類和物件導向結構,php的類的靜態函式和變數不與任何特定類的例項相關聯 換句話說,乙個物件 請看 類與物件的區別 相反,靜態函式和變數與類定義本身相關聯。換言之,乙個類的所有例項都共享相同的靜態變數。在乙個類的方法 函式 的上下文中,靜態變數和函式被訪問使用self 在乙個類的物件 例項 ...

PHP中self和this的用法區別

php支援類和物件導向結構,php的類的靜態函式和變數不與任何特定類的例項相關聯 換句話說,乙個物件 相反,靜態函式和變數與類定義本身相關聯。換言之,乙個類的所有例項都共享相同的靜態變數。在乙個類的方法 函式 的上下文中,靜態變數和函式被訪問使用self 在乙個類的物件 例項 的上下文中使用其他方法...

php中static和self的區別

在閱讀一些框架的原始碼時發現了new static 和new self 甚是不解,後來查閱資料,才知道static採用了延遲繫結,能準確知道是父類還是子類的呼叫。這就是說static是個聰明的小孩,家裡的親戚的輩分他都能準確的叫出 而不是像他的兄弟self,只知道自己的親爹媽。例子如下 class ...