Php 是否定义了检查常量但为空?
在运行脚本时,我首先检查必要的常量是否正确定义,是否带有值 问题是,如果定义了值,我可以得到它,但是我不能正确地检查它是否为空 我知道,对于empty,需要传递一个变量,如果我将定义的常量传递给一个变量,这不是有点违背了这一点吗Php 是否定义了检查常量但为空?,php,constants,Php,Constants,在运行脚本时,我首先检查必要的常量是否正确定义,是否带有值 问题是,如果定义了值,我可以得到它,但是我不能正确地检查它是否为空 我知道,对于empty,需要传递一个变量,如果我将定义的常量传递给一个变量,这不是有点违背了这一点吗 define ('foo',''); 那么,当常数被定义时,我如何检查它是否带有一个值呢 你可以简单地做到: $Foo = 'Value'; $OtherConstant = 'Another'; 如果foo是空字符串,If(foo)条件将计算为false。empt
define ('foo','');
那么,当常数被定义时,我如何检查它是否带有一个值呢 你可以简单地做到:
$Foo = 'Value';
$OtherConstant = 'Another';
如果foo是空字符串,
If(foo)
条件将计算为false。empty()
和转换为布尔值之间有细微的区别。其他情况请参考PHP手册 你可以简单地做到:
$Foo = 'Value';
$OtherConstant = 'Another';
如果foo是空字符串,
If(foo)
条件将计算为false。empty()
和转换为布尔值之间有细微的区别。其他情况请参考PHP手册 strlen(foo)!=0
可能吗?虽然这也会捕获布尔值false
,但您可能不希望这样。转换为空字符串的值是空字符串本身、null
和布尔值false
。上面的检查将匹配那些并且只匹配那些。啊!我对您最近添加的一个问题发表了评论(“通过PHP验证Visa借记”),但您在我添加另一条评论时删除了该问题。请不要这样做-如果一个问题吸引了反对票,那就是在这里发布的风险。@halfer很抱歉这样做,在其他用户发布了一篇文章后考虑了这个问题,这非常合乎逻辑,我决定删除这个问题strlen(foo)!=0
可能吗?虽然这也会捕获布尔值false
,但您可能不希望这样。转换为空字符串的值是空字符串本身、null
和布尔值false
。上面的检查将匹配那些并且只匹配那些。啊!我对您最近添加的一个问题发表了评论(“通过PHP验证Visa借记”),但您在我添加另一条评论时删除了该问题。请不要这样做-如果一个问题吸引了反对票,那就是在这里发布的风险。@halfer很抱歉这样做,在其他用户发布了一篇文章后考虑了一下,这很合乎逻辑,我决定删除这个问题
$Foo = 'Value';
$OtherConstant = 'Another';
if (defined('foo')) {
echo 'defined';
if (foo) {
echo 'not empty';
}
else {
echo 'empty';
}
}
else {
echo 'not defined';
}