У меня есть таблица ‘test_config’. У меня есть поле ‘config_name’, ‘config_value’.
config_name | config_value
____________________________
test | "if($test=='1'){echo 'hello executive if part';}
| else{echo 'executive else part';}"
На моей странице PHP у меня есть код как
<?php
$test='1';
$bottom=DB::table('test_config')->where('config_name','test')->first()->config_value;
eval("\$bottom=\"$bottom\";");
print_r($bottom);
?>
Я хочу напечатать только «привет исполнительный, если часть». Я поймал ошибку
FatalErrorException в eval () ‘кодирует строку 1:
синтаксическая ошибка, неожиданная, если (T_IF) ‘
Следующий код работал для меня:
<?php
$test='1';
$bottom="if($test=='1'){echo 'hello executive if part';} else{ echo 'executive else part';} ";
eval($bottom);
//print_r($bottom);
?>
Или используйте так:
<?php
$test='1';
$bottom="if($test=='1'){echo 'hello executive if part';} else{ echo 'executive else part';}";
eval("\$bottom=\"$bottom\";");
eval($bottom);
?>
Других решений пока нет …