php

如何在静态方法中使用非静态变量

dafenqi
2023-08-07 / 0 评论 / 9 阅读 / 正在检测是否收录...

如何在静态方法中使用非静态变量

关于静态方法和静态变量:

1)static方法中不能直接使用非静态成员,因为非静态成员与实例相关,通过实例化间接使用
2)static方法中不能用this(与实例相关)
3)非static方法中可以使用static成员

如何在静态方法中使用非静态变量?实例:

<?php
class abc{
    public $count=8;
    function __construct(){
        $this->count++;
    }
    static function getCount(){
        $b=new abc();
        return $b->count;
    }
}
$c=new abc();
$b=new abc();
echo $b->getCount();
?>

在静态方法getCount()中, 创建了一个新变量$b=new abc()初始化类,然后再使用类的非静态变量就可以了。

0

Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /www/wwwroot/testblog.58heshihu.com/var/Widget/Archive.php on line 1032

评论 (0)

取消