Страницы

Поиск по вопросам

суббота, 15 февраля 2020 г.

Преобразование строки в выражение

#php


Как преобразовать строку в выражение?

$a = "$c.$b"; // string
$c = "мама";
$b = "папа";

// функция, преобразующая строку в выражение, либо регулярное выражение

echo $a; // выводим "мамапапа";

    


Ответы

Ответ 1



Можно через переменные переменных. Надо будет только в строке $a убрать у переменных доллары $a = 'c.b'; $c = "мама"; $b = "папа"; $temp = explode('.', $a); foreach ($temp as $item) { echo $$item; }

Ответ 2



Автор, если вы хотите получить в ответ строку мамапапа, то достаточно провести конкатенацию строк $c = "мама"; $b = "папа"; $a = $c . $b; echo $a; // выводим "мамапапа"; или так $c = "мама"; $b = "папа"; $a = "$c$b"; echo $a; // выводим "мамапапа"; Если же вы действительно хотите вычислить выражение из строки, то строку следует составить в соответствии с синтаксисом php: $a = '$a = $c . $b;'; // string $c = "мама"; $b = "папа"; // выполняем строку как код php eval($a); echo $a; // выводим "мамапапа"; Но использование функции eval() не рекомендуется из-за возможных проблем с безопасностью выполнения кода.

Ответ 3



echo eval($a); Такой вариант не пойдёт? ссылка

Комментариев нет:

Отправить комментарий