PHP-не может вызвать функцию внутри двойных кавычек
У меня есть php-код:
class Test {
function someThing(){ return 1}
}
$test = new Test();
//why this isnt printing bla bla bla 1 ????
echo "bla bla bla $test->someThing()";
Но похоже, что я не могу вызвать функцию внутри строки в двойных кавычках
Как я могу это сделать ?
Спасибо
4 ответа:
Переменные можно вызывать только внутри строки
Но если вы используете {}, вы можете добавить код в блок
Попробуйте это :
echo "bla bla bla {$test->someThing()}";
Попробуйте вот так
class Test { function someThing() { return 1; } } $test = new Test(); echo 'bla bla bla ' . $test->someThing();
Вы должны использовать это
echo "".$test->someThing()."";
Или без двойных кавычек.
echo $test->someThing();
Вы также можете поместить имя функции в переменную, а затем использовать эту переменную как реальную функцию внутри строки двойных кавычек:
Обратите внимание, что вы можете даже передать параматер на этот вызов.$arr = [1,2,3]; $func_inside_var = 'implode'; echo "output: {$func_inside_var($arr)}" . '<br>';