parse_str() и класс - совместить несовместимое

  • Автор темы Мега-чайник
  • Дата начала

Мега-чайник

Guest
parse_str() и класс - совместить несовместимое

Миссия импосибл. Передо мной стояла задача написать метод (PHP4), который принимал бы строку и с помощью parse_str() разбивал бы её на переменные. Далее значения перменных, имена которых совпадали с именами внутренних перменных класса, присваивались последним. Допустим есть класс с перменными var1 и var2. Есть так же строка "var1=blabla&var2=bleble" (в строке объязательно содержатся все перменные класса). Я парсил эту строку затем ручками присваивал значения:
parse_str($str); $obj->var1=$var1; $obj->var2=$var2. Надо ли объяснять, что это слишком муторно? Тем более что классов мне придется написать ещё не один и хотелось бы иметь универсальную функцию, которая автоматически присваивала переменным класса значения переменных из строки. Я пробовал сунуть в строку "this->var1=blabla" но значение переменной класса не изменялось. Направьте, пожалуйста, на путь истинный :). Это должен быть объязательно метод (функция класса)
 

fixxxer

К.О.
Партнер клуба
PHP:
class foo { var $a; }
$bar = new foo;
$var_name = 'a';
$bar->$var_name = 100;
echo $bar->a;
 

bgm

 
Автор оригинала: fixxxer
PHP:
...
$var_name = 'a';
$bar->$var_name = 100;
...
С месяц назал очень сильно подивился, что сработает следующее:
PHP:
...
$var_name = 'заковыристая::переменная';
$bar->$var_name = 100;
...
:)
 

morti

Новичок
$bar->$var_name = 100;

а я бы сильно удивился если заработает вот это
 
Сверху