Я пытаюсь назвать это из строки Yii::app()->user->id_rol
. Итак, я хочу взять эту строку и выполнить вызов.Вызов статического метода из строки в PHP
Я пытался сделать это:
$class = "Yii::app()->user->id_rol";
$class = explode('::',$class);
$class[1] = explode('->',$class[1]);
$class2 = new $class[0];
$string = "";
$n = count($class[1]);
for($i = 0; $i<$n;$i++){
(($i+1) == $n) ? $fl = '' : $fl = '->';
$string .= $class[1][$i].$fl;
}
$model = $class2->$string;
... но это не работает.
Не определено свойство: Yii :: $ приложение() -> user-> id_rol
Как я могу заставить его работать?
Что именно вы пытаетесь выполнить, более крупную картину, здесь? –
Я пытаюсь указать имя var для получения идентификатора rol в моем новом модуле в параметрах, например, этот массив 'evaluation' => ( \t \t 'id_rol' => 'Yii :: app() -> user-> id_rol ', \t \t), Итак, мне нужно взять эту литеральную строку как переменную –
Как насчет '$ prop =' id_rol '; Yii :: приложение() -> пользователь -> $ prop'? – mnv