Вызов функции из класса. Не работают ReflectionMethod и call_user_func
Добавлено: 2022.05.20, 03:53
Всем доброго дня!
Возникла следующая ситуация:
Есть класс:
Пытаюсь вызвать его метод createDB так:
и так:
Итог один: метод контроллера, из которого я его вызываю, нормально не завершается, и, соответственно, не происходит render страницы - просто пустой экран и всё.
В debug панели никаких ошибок не видать.
При этом, если я делаю:
То работает без проблем.
Что я делаю не так, товарищи?
Возникла следующая ситуация:
Есть класс:
Код: Выделить всё
class Databases extends Migration
{
public function createDB($dbname){
Yii::$app->db->createCommand("CREATE DATABASE IF NOT EXISTS $dbname")->execute();
}
}
Код: Выделить всё
$name = 'Testname';
$reflectionMethod = new ReflectionMethod('Databases', 'createDB');
$status = $reflectionMethod->invoke(new Databases(), $name);
Код: Выделить всё
call_user_func(array('Databases', 'createDB'), $name);
call_user_func('Databases' .'::createDB', $name);
В debug панели никаких ошибок не видать.
При этом, если я делаю:
Код: Выделить всё
$db = new Databases();
$iscreated = $db->createDB($name);
Что я делаю не так, товарищи?