php变量是否可以存储if
语句?
像这样:
$num=0;
$var='if($num==0){print "true";}'
是的,这是可能的。但是要运行$var
代码,您需要使用eval
函数,这是一种非常糟糕的做法:
<?php
$num=0;
$var='if($num==0){print "true";}';
eval($var);
您可以考虑将此代码更改为:
<?php
$num=0;
$val = 'numFunction';
$val($num);
function numFunction($num)
{
if($num==0)
print "true";
}
或者像@Napolux建议的那样关闭:
<?php
$num=0;
$val = function($num)
{
if($num==0)
print "true";
};
$val($num);
您可以存储一个运行if的函数。它被称为闭包。
$greet = function($name)
{
if($name != '') {
printf("Hello %s'r'n", $name);
}
};
$greet('World');
$greet('PHP');
最好的方法是
$num=0;
if($num==0)
{
$var = true;
print $var;
}