在PHP語言中,"::"和"->"都是非常常見的符號,有著著重要的作用。那么究竟是什么呢?在本文中,我們將詳細地介紹PHP中的"::"和"->"。
在PHP中,"::"和"->"都是表示訪問成員變量或者成員函數的符號。它們之間的不同在于"::"表示靜態訪問,而"->"則表示對象訪問。舉個例子來說,在一個類中如果存在一個靜態的成員變量或者靜態的成員函數,那么我們可以通過"::"來訪問它,而如果存在一個非靜態的成員變量或者成員函數,那么我們就需要通過"->"來訪問它。接下來,我們將分別介紹"::"和"->"的使用。
一、"::"的使用
1. 靜態成員變量
當我們需要訪問一個類中的靜態成員變量時,我們就可以使用"::"符號。例如,我們有一個類A,其中有一個靜態成員變量$a,那我們可以這樣來訪問它:
class A{ public static $a = "Hello World!"; } echo A::$a;運行結果:Hello World!2. 靜態成員函數 同樣的,當我們需要訪問一個類中的靜態成員函數時,我們也可以使用"::"符號。例如,我們有一個類B,其中有一個靜態成員函數static_func(),那我們可以這樣來訪問它:
class B{ public static function static_func(){ echo "This is a static function!"; } } B::static_func();運行結果:This is a static function!二、"->"的使用 1. 成員變量 當我們需要訪問一個類中的非靜態成員變量時,我們就可以使用"->"符號。例如,我們有一個類C,其中有一個非靜態成員變量$b,那我們可以這樣來訪問它:
class C{ public $b = "Hello World!"; } $c = new C(); echo $c->b;運行結果:Hello World!2. 成員函數 同樣的,當我們需要訪問一個類中的非靜態成員函數時,我們也可以使用"->"符號。例如,我們有一個類D,其中有一個非靜態成員函數non_static_func(),那我們可以這樣來訪問它:
class D{ public function non_static_func(){ echo "This is a non static function!"; } } $d = new D(); $d->non_static_func();運行結果:This is a non static function!總結: 在 PHP 中,"::"和"->"都是訪問成員變量或者成員函數的符號,它們之間的不同在于前者表示靜態訪問,而后者則表示對象訪問。在使用時需要注意區分,避免出現不必要的錯誤。
下一篇php 0