如何检查变量值而不是它的存在

时间:2015-01-28 00:42:27

标签: php

这是一个简单的PHP代码:

if ( $var ) echo $value;

此语句检查$ var是否有值,然后回显它。

事实上,这不是我想要的。我想检查$ var的值(这是一个函数,例如' is_single()'就像wordpress一样)。

---更新---

要克莱菲:

if ( $var ) echo 'var is true';

我不希望它是一个布尔语句,我希望它检查$ var的值,在我的情况下(Wordpress)$var = 'is_single()';其中is_single()是一个函数。

---更新2 ---

看起来我想要实现的是在if语句中使用函数而不是字符串。

类似的东西:

if ( $var() ) instead of ( $var )

虽然$var存储为字符串。

1 个答案:

答案 0 :(得分:3)

使用:

isset($var)

到目前为止,您的代码不会检查变量($var)是否有值。它计算布尔表达式。这意味着您的代码对于评估为false的所有值(例如0false)都会失败。因此,您的变量可以设置,可以有一个值,永远不会被回显。这就是你使用isset($var)检查变量是否设置然后你可以执行其他检查或回显内容的原因。

有关更多信息,请参阅php.net Manul => http://php.net/manual/en/function.isset.php

感谢N.B.进一步解释


更新

Wordpress函数返回一个布尔值,因此TrueFalse

if (is_single()) echo "is_single() is true";

如果is_single()返回True,则显示 is_single()为真


更新2

<Input name="var" value="<?php echo is_single();?>"/>

应该这样做。