Tengo una pregunta respecto a la "dinámica" de inicialización de clase, permítanme explicar lo que quiero decir:
$class = 'User';
$user = new $class();
//...is the same as doing
$user = new User();
Así que ... ese no es el problema, pero estoy teniendo algunos problemas haciendo lo mismo al llamar a una variable estática de una clase, por ejemplo:
$class = 'User';
print $class::$name;
¿Qué da el siguiente error:
Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in
Por supuesto que lo he probado haciendo print User::$name;
y eso funciona. Entonces la clase funciona
¿Por qué es esto y hay una forma de evitarlo?
Seguimiento pregunta:
También hay razones válidas para no utilizar esta forma "dinámica" en la creación de clases?
no puede mezclar llamadas dinámicas y estáticas, es por eso que es imposible llamar a User :: $$ prop y también su $ class :: $ name –
http://stackoverflow.com/questions/3679717/unexpected-t -paamayim-nekudotayim-on-one-computer-but-not-another-with-php-5 –
posible duplicado de [Acceso a una variable estática por $ var :: $ referencia] (http://stackoverflow.com/questions/ 675676/access-a-static-variable-by-varreference) –