检测PHP变量不足:FALSE vs NULL vs unset()vs empty()?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了检测PHP变量不足:FALSE vs NULL vs unset()vs empty()?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1516字,纯文字阅读大概需要3分钟。
内容图文
![检测PHP变量不足:FALSE vs NULL vs unset()vs empty()?](/upload/InfoBanner/zyjiaocheng/698/94a1b46863884d06bc72cc167c26f005.jpg)
定义PHP中不存在值的最佳方法是什么,或者不足以满足应用程序需求.
$var = NULL,$var = array(),$var = FALSE?
什么是最好的测试方法?
isset($var),empty($var),if($var!= NULL),if($var)?
将变量初始化为它们将是什么,例如如果字符串为array,则数组()(如果它们将是数组)具有一些好处,因为它们将在它们所处的设置中起作用而没有任何意外结果.
例如foreach($emptyArray)不会抱怨它不会输出任何东西,而foreach($false)会抱怨错误的变量类型.
但它有点不必要的麻烦,因为有很多不同的做法基本上是相同的.例如. if(empty($var))或if($var == NULL)
重复:Best way to test for a variable’s existence in PHP; isset() is clearly broken
解决方法:
您命名的每个函数都用于不同的目的,应该相应地使用它们:
> empty:告诉现有变量是否具有可被视为空的值(数字为0,数组为空数组,等于NULL等).
> isset($var):告诉脚本是否在变量是赋值的左侧(即$var = 3;)或任何其他模糊方法(如extract,list或eval)之前遇到一行.这是查找是否为a的方法变量已设定.
> $var == NULL:这很棘手,因为0 == NULL.如果你真的想知道变量是否为NULL,你应该使用triple =:$var === NULL.
> if($var):与$var == NULL相同.
有用的链接是http://us2.php.net/manual/en/types.comparisons.php.
判断变量是否适合您正在编码的脚本的方法将完全取决于您的代码,因此没有单一的方法来检查它.
最后一条建议:如果您希望变量是一个数组,请不要等待它在某个地方设置.相反,事先初始化它,然后让你的代码运行,也许它会被新数组覆盖:
// Initialize the variable, so we always get an array in this variable without worrying about other code.
$var = array();
if(some_weird_condition){
$var = array(1, 2, 3);
}
// Will work every time.
foreach($var as $key => $value){
}
内容总结
以上是互联网集市为您收集整理的检测PHP变量不足:FALSE vs NULL vs unset()vs empty()?全部内容,希望文章能够帮你解决检测PHP变量不足:FALSE vs NULL vs unset()vs empty()?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。