${$} но для объекта а не просто переменной

_RVK_

Новичок
Что значит "нифига"? Как твое "нифига" проявляется?
вот если я сам переменную объект делаю
Это как? Объект и есть переменная. Создается объект оператором new....
эт потому что смарти есть класс
А таой $x это не объект класса?
 

_RVK_

Новичок
потому как $smarty->_tpl_vars[x[1]->name] выдает ошибку
Естественно выдает. Это противоречит синтаксису PHP.
как мне обратиться скажем к
PHP:
print_r($smarty->_tpl_vars);
-~{}~ 15.12.04 14:25:

valerchik
Что за выкрутасы. Зачем ты удаляешь свои сообщения?
 

valerchik

Guest
я их редактировал, а они какова-то пустые, блин :(
 

_RVK_

Новичок
я их редактировал, а они какова-то пустые, блин
Ну прямо чудеса какие-то. Ей богу.

-~{}~ 15.12.04 14:29:

Может тебе сходить в корзину и потренероваться редактировать сообщения.
 

valerchik

Guest
есть, но ты не знаешь ответ на мой вопрос
 

neko

tеam neko
valerchik
если это вопрос по смарти то задавай его на форуме по смарти
если это вопрос по пхп, то это не работает потому, что в пхп такой переменной быть не может

еще вопросы будут?
 

valerchik

Guest
да ладно.
причем тут смарти.

если я напишу
$smarty->_tpl_vars[groups][3]->group_desc = 5;

то все пучком.
 

_RVK_

Новичок
valerchik
Я тебе уже ответил на твой вопрос. Могу повтрить.
print_r($smarty->_tpl_vars);

Чем тебя мой ответ не устраивает?

-~{}~ 15.12.04 15:21:

${"smarty->_tpl_vars[groups][3]->group_desc"} = 5;
Что ты пытаешься сделать?

-~{}~ 15.12.04 15:23:

Не забываем о синтаксисе пхп
 

valerchik

Guest
синтаксис тут непричем, и так и так работает
что хочу сделать ?
я знаю имя переменной.
хочу присвоить ей значение.
вот и все.
с простой переменной, типа ${'vasia'} = 5;
се ок, а вот со сложной.
 

_RVK_

Новичок
PHP:
$var_name = 'group_desc';
$smarty->_tpl_vars[groups][3]->$var_name = 5;
Пишу это с надеждой что ты знаешь что делаешь, и хорошо подумал что тебе это действительно нужно.
синтаксис тут непричем, и так и так работает
Причем, причем. Почитай мануал. 'groups' - это строка, а groups - константа. Чуешь разницу?
 

valerchik

Guest
ты не понял, я знаю полное имя переменной
smarty->_tpl_vars[groups][3]->group_desc

и мне надо присвоить к переменной
$smarty->_tpl_vars[groups][3]->group_desc
значение.

слышишь, полное, а не кусок

-~{}~ 15.12.04 15:55:

все, тишина ???
 

_RVK_

Новичок
и мне надо присвоить к переменной
$smarty->_tpl_vars[groups][3]->group_desc
значение
Если тебе это надо, то скорее всего тебе этого не надо.
Так что пока ты не опишешь наконец подробно задачу, тишина продлится. Советовать кривые решения к кривой задаче я не буду.
 

valerchik

Guest
eval не помогает.

подробно задачу описал.
имею имя переменной, хочу изменить значение зная имя, что тут непонятного.
 
valerchik
я знаю полное имя переменной
smarty->_tpl_vars[groups][3]->group_desc
О боже.... Валерчик, Вы бы хоть разницу между переменной и свойством уяснили сначала....
Вся эта строка к переменной не имеет никакого значения.
Переменная здесь одна - $smarty. Эта переменная является экземпляром класса. Он имеет свойство. Свойство является ассоциативным массивом, один из которого тоже массив (только уже - список).
Так вот ты пытаешся используя возможности variable variable (переменная ПЕРЕМЕННОЙ) поменять элемент массива являющегося элементом ассоциативного массива, являющегося свойством объекта содержащегося в переменной $smarty.

А теперь покажи мне - где в руководстве по PHP написано что такое вообще возможно?

-~{}~ 15.12.04 16:28:

Вывод - выполнить данные действия не возможно. Ну, не считая решения "левой рукой через пупок почесать правое ухо". Т.е. не считая eval'а.
Которым, как бы это не казалось удивительно, то же надо уметь пользоваться.
 
Сверху