PHP分配日期功能并访问类问题之外的类属性



在此上挥舞着我的头。我正在尝试将date()函数分配给像这样的foo()类的属性。

class Foo{
 public $dt = date("F-d-Y H:j:s");
function today(){} //just some empty method
};
$g = new Foo();
echo $g->dt;

我有解析错误:语法错误,意外'(',期望',''或;'//这是date()line

我也尝试过。

class Foo{
public $dt;
function today(){
echo $this->dt = date("F-d-Y H:j:s");
}
};
$g = new Foo();
$g->today();

没有错误,一切都很好。因此,在我看来,我们无法将date()直接分配给类属性。请把我指向正确的方向。预先感谢。

如果提供了类属性的初始化,则必须是常数,而不是函数调用。如果要计算初始值,请在类构造函数方法中进行。

class Foo {
    public $dt;
    function __construct() {
        $this->dt = date("F-d-Y H:j:s");
    }
}
$g = new Foo();
echo $g->dt;

来自PHP文档:

本声明可能包括初始化,但是此初始化必须是一个恒定的值 - 也就是说,必须在编译时评估它,并且必须不依赖运行时信息才能进行评估。/blockquote>

相关内容

最新更新