2016-03-17 3 views
1

Мне просто интересно, как я смогу использовать PHP-кодирование в переменных PHP? Так например. я хочу что-то вродеНаличие PHP внутри значений PHP

$Start = " IF($lala == "0"){ echo '"; 
$End = " '; }"; 

и иметь возможность использовать его в качестве

echo ''.$start.' hello '.End.''; 

Это может звучать странно, но я хотел бы, чтобы это было сделано таким же образом к этому.

Спасибо

+4

Почему вы хотите это сделать? –

+5

Я думаю, это поможет вам: http://php.net/manual/en/function.eval.php – akasummer

+2

'$ start! = $ Start' и' End! = $ End' – devpro

ответ

1

Я не могу даже сказать вам, насколько опасно выполнение кода из строки есть. Так что даже не думать об этом ...

Вместо этого используйте функцию или закрытия (как только вы чувствуете, несколько безопасно с PHP)

<?php 
function myFunction($str) { 
    $lala = lalaFunction(); 
    if ($lala) { return $str; } 
} 

, а затем просто позвонить:

echo myFunction('something'); 
+0

Это абсолютно путь! НЕ используйте eval(). – kojow7

0

Да, вы можете с помощью eval():

<?php 
    $lala = 0; 
    $Start = "if($lala == '0'){ echo "; 
    $End = ";}"; 
    eval($Start.'hello'.$End); 
?> 

выход:

hello 
+0

Это приведет к синтаксической ошибке. –

+0

это действительно сработает - тест перед комментарием. – mitkosoft

+0

Хм только что заметил, что мое было неправильно, это правильно. –

0

в этом случае для, если условие вы можете просто написать код так:

<?php 
$check=0; 
$x='true'; 
$y='false'; 
$value=$check==0?$y:$x; 
?> 

в этом $check==0 используется, если и ? используется для случая, чтобы работать, если условие прошло верно и : используется для еще части.

Смежные вопросы