В настоящее время я немного запутался со статическими и сеттерами/Getters ins php.Call setter и getter из статического метода
Мой код выглядит следующим образом:
class Test{
private static $name;
public static function setName($value){
self::$name = $value //Works fine
}
public static function getName(){
return self::$name;
}
function something(){
self:: setName('nameOne');
}
public static function dostuff(){
$test = self::getName(); //var_dump returns NULL
}
}
Как я могу получить значение $name
внутри функции dostuff
, который должен быть статическим?
Что вопрос? –
Недопустимая функция 'something()'. Вы не можете использовать '$ this-> setName()' вы должны использовать 'self :: SetName()'. Чтобы получить значение в 'dostuff()' просто назовите его как '$ myname = self :: $ name' – Daan
Вы можете использовать' self' для ссылки на свойства класса. Поэтому в вашем случае это будет: 'self :: name'. Также вы не можете «$ this» в статическом контексте. – Andrew