PHP вызывает функцию класса динамически по исключениям переменных

Я пытаюсь вызвать публичную функцию класса с переменными (php7). Поэтому я делаю:

$module = 'frontend\\modules\\rest\\models\\Member';
$action = 'view_profile'

$response = new $module();
$response = $response1->$action;

При вызове $ response1 -> $ action я получаю следующую ошибку:

Undefined property: frontend\modules\rest\models\Member::$view_profile

Я вижу, что системы пытаются вызвать … Member \ $ view_profile, и это не будет работать. Но почему перед $ view_profile стоит «$». Я пробовал несколько вариантов, но ошибка с $ view_profile всегда есть. Что не так с этим подходом?

0

Решение

Проверьте этот другой ответ: ООП в PHP: класс-функция из переменной? (не могу комментировать, извините …)

Во всяком случае, это то, что вы после: http://php.net/manual/en/functions.variable-functions.php

<?php
class Foo
{
function Variable()
{
$name = 'Bar';
$this->$name(); // This calls the Bar() method
}

function Bar()
{
echo "This is Bar";
}
}

$foo = new Foo();
$funcname = "Variable";
$foo->$funcname();  // This calls $foo->Variable()

?>

Так что я думаю, единственное, чего не хватает, это «()» после

$response1->$action;
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector