static這個概念在處理類別的時候是需要用到的,在類別裡有被稱為成員(屬性)的內容,如果不用static修飾符來定義承運,那麼就會用實例來管理,所以,這篇文章就來跟大家介紹php中static變數的使用方法。
例如,我們定義了一個person類,在person類別中定義了name這個屬性
#然後我們從person類別實例化並建立一個名為「張三」的實例,這個時候就會有一個叫做張三的人。
接著我們再從person類別中實例化並創建一個名為「李四」的實例,這樣的話就會有一個叫李四的人。
我們可以看到每個實例都會管理一個name,在這種情況下,name是一個名為實例變數或局部變數的屬性。
與實例變數相對應的就稱為static變數或類別變量,這是在類別之間共同管理的項;因為不知道與實例有什麼不同,所以下面我們在person類別中進一步進行說明。
我們在person類別中定義一個新的family屬性,family與name不同,因此,上面的名字是青木的人,名字是山田的人,無論哪一個都是family。
在定義它之後使用類別時,使用New運算子建立一個實例。
下面我們來看static變數的寫法
// person类的定义 class Person{ // 成员 public $name; // 名为name的实例变量 public static $family; // family的static变量/类变量
我們來看一個具體的範例
讓我們實例化之前出現的person類別
// 定义person类 class Person { // 成员 public $name; // 名为name的实例变量 public static $family = ""ヒト科""; // family的static变量/类变量 } // 名为张三的人 $aoki = new Person(); $aoki->name = ""张三""; // 名为李四的人 $yamada = new Person(); $yamada->name = ""李四""; // static变量可以直接从类中调用! echo Person::$family.PHP_EOL; // 让我们检查一下每个实例! echo $zhangsan->name.PHP_EOL; // 张三 echo $zhangsan::$family.PHP_EOL; echo $lisi->name.PHP_EOL; // 李四 echo $lisi::$family.PHP_EOL; // 更改了static变量,因为与类的所有实例共享,所以结果都改变了! Person::$family = ""哺乳动物""; echo Person::$family.PHP_EOL; // 哺乳动物 echo $zhangsan::$family.PHP_EOL; // 哺乳动物 echo $lisi::$family.PHP_EOL; // 哺乳动物
這篇文章到這裡就全部結束了,更多精彩內容大家可以關注php中文網相關欄位教學! ! !
以上是理解php中static變數的使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!