`
yxwang0615
  • 浏览: 560888 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

or die()

    博客分类:
  • php
阅读更多

mysql_connect('locahost','root','') or die('数据库连接失败');

 

使用die是为了终止程序,并输出错误,一般在我们学习的时候会使用这种方法,但在具体项目中很少这样用。
因为项目中即使报错,也不想使用白屏黑字去报错,都希望使用项目本身标准的报错页去报告
那么在or 的后面,很多人会使用自定义函数(方法)来报错、以及记日志等操作。

 

<?php
function test(){
echo "0";
return false;
}

test() or print('1') or print('2');
?>

  


之所以 用 or 可以达到,当函数错误后,执行or后面的函数是因为:
1.逻辑运算的运算顺序是从左向右
2.or运算符的左结合性
3.or运算中,如果运算时有值为真了,则整个表达式为真,后面不需要运算

终合上面三个因素,当or左侧函数运行正常(返回非假值),则不会执行后面的函数
这里利用了or的这个特性,将die(终止并输出函数)用于此处,巧妙的实现了函数异常而报错的功能

根据上面的分析,想到
如果左侧函数就是返回假的函数,或者无返回值的函数,应该也是执行后面的函数

转自http://hi.baidu.com/%CE%DE%B3%A3%C2%D3%D3%B0/blog/item/9f39a259aee184d59d820408.html

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics