PHP语句中or的用法

2016-01-29 15:24 12 1 收藏

PHP语句中or的用法,PHP语句中or的用法

【 tulaoshi.com - PHP 】

经常看到这样的语句:
$file = fopen($filename, r) or die("抱歉,无法打开: $filename");
or在这里是这样理解的,因为在PHP中并不区分数据类型,所以$file既可以是int也可以bool,所以这样的语句不会报错。但其处理过程可能有些朋友不大明白。
其实在大多数的语言中, bool or bool这样的语句中,如果前一个值为真后一个值就不会再判断了。这里也是的,所以如果fopen函数执行正确的话,会返回一个大于0的int值(这其实就是“真”),后面的语句就不会执行了。如果fopen函数执行失败,就会返回false,那么就会判断后面的表达式是否为真了。
结果执行了die()之后,不管返回什么,程序都已经停止执行了,并且显示指定的出错信息,也就达到了调试的目的。
就这样。:)


来源:https://www.tulaoshi.com/n/20160129/1495788.html

延伸阅读
问题: gcc编译器似乎对宏编译指令不支持宏替换,比如: #define PACK1 pack(1) #pragma PACK1 回答: gcc 不支持#pragma行上的宏替换,参见: info gcc 5.25 Declaring Attributes of Functions ... Some people object to the `__attribute__' feature, suggesting tha...
标签: SQLServer
为了从两个或多个表中选出数据,我们一般使用表连接来实现这个功能。 本节介绍join(连接)的概念. 为此我们准备了两个试验用表: album(专辑表) 和 track(曲目表). 专辑表:包含200首来自Amazon的音乐CD的概要信息。 album(asin, title, artist, price, release, label, rank) 曲目表:每张专辑中的曲目(因为是音乐...
标签: SQLServer
  可以采用exec方法 declare @tempStr varchar(350) select @tempStr='Update weekcount set ['+convert(varchar,@week)+']=['+convert(varchar,@week)+']+1 where userid='''+replace(@user,'''','''''')+'''' exec(@tempStr) 注意: 使exec不能返回一些变量的值,而且当前的变量值在exec的语句里无效.  
标签: Web开发
能,可以用 regexp 关键字来实现。 比如:我想搜索 admin 表中 username 字段为数字的记录。则可以使用下面的 SQL 语句: select * from articles where title regexp '[0-9].+';
标签: SQLServer
可以采用exec方法 declare @tempStr varchar(350) select @tempStr='Update weekcount set ['+convert(varchar,@week)+']=['+convert(varchar,@week)+']+1 where userid='''+replace(@user,'''','''''')+'''' exec(@tempStr) 注意: 使exec不能返回一些变量的值,而且当前的变量值在exec的语句里无效.       &nb...

经验教程

437

收藏

20
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部