Pregunta

¿Es la única manera de asignar $ systime un valor de funciones incorporadas, a través de un método?

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

De inmediato, pensaría algo así, ¿no ?:

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

Gracias

¿Fue útil?

Solución

Debería poder usar un constructor para asignar el valor, por ejemplo:

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

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


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

Para obtener más información sobre __construct (), consulte la sección del manual de php en php orientado a objetos.

Otros consejos

De http://www.php.net/manual/ en / language.oop5.basic.php (Justo antes del Ejemplo 3)

  

El valor predeterminado debe ser una constante   expresión, no (por ejemplo) una   variable, un miembro de la clase o una función   llamada.

Sin embargo, también puede asignar un valor desde el constructor:

class Test{
    private  $systime;
    public function __construct(){
        $this->systime = time();
    }
    public function get_systime(){
      echo $this->systime;
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top