时间:2021-07-01 10:21:17 帮助过:19人阅读

例如,我们定义了一个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;  // 哺乳动物本篇文章到这里就全部结束了,更多精彩内容大家可以关注Gxl网相关栏目教程!!!
以上就是理解php中static变量的使用方法的详细内容,更多请关注Gxl网其它相关文章!