Можно ли обойти ошибку при динамическом имени класса?

250
24 августа 2017, 22:19

Всё работает:

$class = 'Class'.$request->controller;
$obj  = new $class;

А так шторм говорит синтаксическая и страница плюётся 500й ошибкой:

$obj  = new 'Class'.$request->controller;

Цель - избавится от доп. переменной и визуального мусора (дополнительной строчки в коде)

Answer 1

язык php поддерживает обращение к функциям через переменные, то же самое и с классами.

Вы можете создать переменную.

$class = 'Class'.$request->controller;

И потом создать класс, с помощью переменной.

$obj  = new $class;

А в Вашем случае 'Class'.$request->controller это строка, а не переменная php

READ ALSO
Переписать php код на node.js

Переписать php код на node.js

Здравствуйте, есть вот такой код на PHPНужно переписать на node

328
Как выбрать значение из массива PHP

Как выбрать значение из массива PHP

Потратил уже пол дня на эту "ошибку" и никак не могу найти решение, есть массив:

302