Свойства объекта - PullRequest
       19

Свойства объекта

1 голос
/ 30 апреля 2009

Является ли единственный способ присвоить $systime значение встроенных функций через метод?

class Test{
    private  $systime;
    public function get_systime(){
       $this->systime = time();
    }
}

Правильно, я бы подумал, что-то вроде этого, верно?:

class Test{
    private  $systime = time();
    public function get_systime(){
      echo $this->systime;
    }
}

Спасибо

Ответы [ 2 ]

2 голосов
/ 30 апреля 2009

С http://www.php.net/manual/en/language.oop5.basic.php (непосредственно перед примером 3)

Значение по умолчанию должно быть константой выражение, а не (например) переменная, член класса или функция звоните.

Однако вы также можете назначить значение из конструктора:

class Test{
    private  $systime;
    public function __construct(){
        $this->systime = time();
    }
    public function get_systime(){
      echo $this->systime;
    }
}
2 голосов
/ 30 апреля 2009

Вы должны иметь возможность использовать конструктор для присвоения значения, например:

class Test {
  private $systime;
  function __construct() {
    $this->systime = time();
  }

  public function get_systime(){
    echo $this->systime;
  }
}


$t = new Test();
$t->get_systime();

Для получения дополнительной информации о __construct () см. php руководство по объектно-ориентированному php.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...