关于 or的用法。_PHP
程序员文章站
2022-06-10 14:26:44
...
经常看到这样的语句:
$file = fopen($filename, 'r') or die("抱歉,无法打开: $filename");
or在这里是这样理解的,因为在PHP中并不区分数据类型,所以$file既可以是int也可以bool,所以这样的语句不会报错。但其处理过程可能有些朋友不大明白。
其实在大多数的语言中, bool or bool这样的语句中,如果前一个值为真后一个值就不会再判断了。这里也是的,所以如果fopen函数执行正确的话,会返回一个大于0的int值(这其实就是“真”),后面的语句就不会执行了。如果fopen函数执行失败,就会返回false,那么就会判断后面的表达式是否为真了。
结果执行了die()之后,不管返回什么,程序都已经停止执行了,并且显示指定的出错信息,也就达到了调试的目的。
就这样。:)
$file = fopen($filename, 'r') or die("抱歉,无法打开: $filename");
or在这里是这样理解的,因为在PHP中并不区分数据类型,所以$file既可以是int也可以bool,所以这样的语句不会报错。但其处理过程可能有些朋友不大明白。
其实在大多数的语言中, bool or bool这样的语句中,如果前一个值为真后一个值就不会再判断了。这里也是的,所以如果fopen函数执行正确的话,会返回一个大于0的int值(这其实就是“真”),后面的语句就不会执行了。如果fopen函数执行失败,就会返回false,那么就会判断后面的表达式是否为真了。
结果执行了die()之后,不管返回什么,程序都已经停止执行了,并且显示指定的出错信息,也就达到了调试的目的。
就这样。:)
推荐阅读
-
关于java.util.Random的实现原理详解
-
关于IIS连接数和在线人数的详细说明
-
关于 merb 和 rails 进展的小道消息 博客分类: 程序思考 RailsMacRubyRuby八卦框架
-
关于 merb 和 rails 进展的小道消息 博客分类: 程序思考 RailsMacRubyRuby八卦框架
-
在C#中生成与PHP一样的MD5 Hash Code的方法
-
PHP识别二维码的方法(php-zbarcode安装与使用)
-
MySQL 关于表复制 insert into 语法的详细介绍
-
PHP使用PHPExcel删除Excel单元格指定列的方法
-
PHP通过微信跳转的Code参数获取用户的openid(关键代码)
-
详解MYSQL的备份还原(PHP实现)