PHP5.5和之前版本的empty函数有什么不同-创新互联

这篇文章主要讲解了“PHP5.5和之前版本的empty函数有什么不同”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP5.5和之前版本的empty函数有什么不同”吧!

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册雅安服务器托管、营销软件、网站建设、尼金平网站维护、网站推广。

复制代码 代码如下:


if(strlen($passwd) < 6 || empty($preg_replace("/\d/", "", $passwd))) {
    //do something
}


大致的意思就是,密码必须大于6位切不能只由数字组成。找遍服务器日志,发现如下错误:


复制代码 代码如下:


PHP Fatal error: Can't use function return value in write context in /xxx/xxx/xx.php on line xxx


google了一下,大概是说,empty的参数不能为函数。我靠,本地明明是好的。看了下本地的PHP是5.5的,服务器是5.3的。难道这函数在2个版本之间就进化了么?找遍了PHP官方的文档没有发现任何端倪,然后google狂搜,不小心点到了PHP英文文档界面,在empty函数的介绍下面,发现了一行小字:


复制代码 代码如下:


Note:
Prior to PHP 5.5, empty() only supports variables; anything else will result in a parse error. In other words, the following will not work: empty(trim($name)). Instead, use trim($name) == false.


总结下empty函数的使用场景:

1.PHP 5.5之前的版本,这个函数是用来检查变量的赋值是否为0, false, 空字符串, null。任何非变量形式的参数都是导致这个函数报错。
2.PHP 5.5这个函数可以应用于任何值,而不局限于变量。可以为常量、函数返回值等等。

感谢各位的阅读,以上就是“PHP5.5和之前版本的empty函数有什么不同”的内容了,经过本文的学习后,相信大家对PHP5.5和之前版本的empty函数有什么不同这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联网站建设公司,,小编将为大家推送更多相关知识点的文章,欢迎关注!


网站名称:PHP5.5和之前版本的empty函数有什么不同-创新互联
分享链接:http://myzitong.com/article/ddedgo.html