Haotik
@Haotik
PHP мидл без фреймворков

Как можно использовать Traits для установки переменных классов?

Есть идея вынести в трейт методы get и set для установки значений переменных в разных классах. Так сказать создать универсальный метод. Придумал следующую реализацию:
function setVar($name, $value) {
		$this -> $$name = $value;
	}
// вызов 
$key -> setVar('$count', $_GET['count']);


если делаю var_dump($var = $$name) внутри метода то вижу что, обращается к переменной $count b даже выводится ее значение
но непосредственно в скрипте и на странице вылетают notice

Notice: Undefined variable: $count in /media/andrey/_dde_data/projekts/php2/engine/CLSTraits.php on line 7


и здесь у меня вопросы: как может быть undefined если я в вар дамп вижу имя и значение, да и присваиваю его напрямую.

И второй вопрос как это можно обойти или реализовать? все таки сеттеры и геттеры чуть ли не самые однотипные методы в любом классе и логично именно их вынести в трейт
  • Вопрос задан
  • 118 просмотров
Решения вопроса 1
Haotik
@Haotik Автор вопроса
PHP мидл без фреймворков
Спасибо за идеи, но удалось реализовать этот вариант
function setVar($name, $value) {
$this -> $name = $value;
}
$key -> setVar('count', $_GET['count']);

Всем спасибо
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Ведисофт Екатеринбург
от 25 000 ₽
YCLIENTS Москва
от 200 000 до 350 000 ₽
от 300 000 до 500 000 ₽
20 апр. 2024, в 18:09
70000 руб./за проект
20 апр. 2024, в 18:04
3000 руб./за проект
20 апр. 2024, в 17:55
3000 руб./за проект