【问题标题】:Setting date to a variable in a PHP class将日期设置为 PHP 类中的变量
【发布时间】:2010-01-15 03:13:27
【问题描述】:

我认为这是一个非常非常简单的问题,但我似乎找不到答案。

我正在尝试为 PHP 类中的属性设置默认值,其中一个是日期,因此我尝试使用 date() 函数来设置它:

<?php 
class Person
{
    public $fname = "";
    public $lname = "";
    public $bdate = date("c");
    public $experience = 0;
}
?>

我在 Zend Studio 中遇到一个错误,在公开的 $bdate 行上显示

PHP Parse error:  syntax error, unexpected '(', expecting ',' or ';'

我查看了一堆关于 PHP 中各种日期类的文档和 Class/Properties 文档,但我找不到任何将日期值设置为属性的示例。我已经尝试过 mktime() 和其他一些日期类,但总是遇到同样的错误。

如何在 PHP 中为属性设置日期值?

【问题讨论】:

    标签: php datetime date


    【解决方案1】:

    您不能在类内部的函数外部使用函数调用或变量。默认值必须是静态的。

    以下分配有效:

    public $data = "hello";
    public $data = array(1,2,3,4);
    public $data = SOME_CONSTANT;
    

    以下不是:

    public $data = somefunction();
    public $data = $test;
    

    但是你可以使用构造函数:

    public function __construct()
    {
        $this->bdate = date("c");
    }
    

    【讨论】:

    • 太棒了,说得通。谢谢!
    猜你喜欢
    • 2016-06-30
    • 2019-12-21
    • 2017-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    相关资源
    最近更新 更多