php && 逻辑与运算符使用说明


Posted in PHP onMarch 04, 2010

例子:
!defined('MAGIC_QUOTES_GPC') && define('MAGIC_QUOTES_GPC', get_magic_quotes_gpc());

o(︶︿︶)o 唉,很晕,今天问了N多的人。终于把“&&”东西给弄明白怎么回事了

运算符都没有判断就那样写什么意思,哎,原来如果前面的为假。后面的语句就不执行了。免得我们还费劲的写if

这样多简单。。。

//简单说明,如果前面的判断为假后面的则不执行,如果是真,继续执行下面的定义常量操作。

逻辑运算符
例子 名称 结果
$a and $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。
$a or $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。
$a xor $b Xor(逻辑异或) TRUE,如果 $a 或 $b 任一为 TRUE,但不同时是。
! $a Not(逻辑非) TRUE,如果 $a 不为 TRUE。
$a && $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。
$a || $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。

Example #1 逻辑运算符示例
<?php 
// 下面的 foo() 不会被调用,因为它们被运算符“短路”了。 
$a = (false && foo()); 
$b = (true || foo()); 
$c = (false and foo()); 
$d = (true or foo()); 
// "||" 的优先级比 "or" 高 
$e = false || true; // $e 被赋值为 (false || true),结果为 true 
$f = false or true; // $f 被赋值为 false [Altair注:"=" 的优先级比 "or" 高] 
var_dump($e, $f); 
// "&&" 的优先级比 "and" 高 
$g = true && false; // $g 被赋值为 (true && false),结果为 false 
$h = true and false; // $h 被赋值为 true [Altair注:"=" 的优先级比 "and" 高] 
var_dump($g, $h); 
?>

上例的输出类似于:
bool(true)
bool(false)
bool(false)
bool(true)

Another example that might help.

<?php
(isset($panelemail) && !empty($panelemail) ? $panelemail : $userdata['email']);
?>
returns the userdata email address, but this

<?php
(isset($panelemail) AND !empty($panelemail) ? $panelemail : $userdata['email']);
?>
returns false.

The reason is that the two types of ands have a different order of precedence. "&&" is higher than "AND", and the "?:" operator just happens to come between the two. Also, since "||" (or) is actually higher than "AND," you should never mix &&s and ||s with ANDs and ORs without paretheses.

For example:

<?php
true && false || false
?>
returns false, but

<?php
true AND false || false
?>
returns true.

PHP 相关文章推荐
十天学会php之第五天
Oct 09 PHP
php中常用编辑器推荐
Jan 02 PHP
php利用iframe实现无刷新文件上传功能的代码
Sep 29 PHP
ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法
Oct 30 PHP
浅析php适配器模式(Adapter)
Nov 25 PHP
ThinkPHP入口文件设置及相关注意事项分析
Dec 05 PHP
PHP编写daemon process详解及实例代码
Sep 30 PHP
Laravel中基于Artisan View扩展包创建及删除应用视图文件的方法
Oct 08 PHP
PHP Trait代码复用类与多继承实现方法详解
Jun 17 PHP
laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
Nov 14 PHP
PHP终止脚本运行三种实现方法详解
Sep 01 PHP
PHP中isset、empty的用法与区别示例详解
Nov 05 PHP
PHP MVC模式在网站架构中的实现分析
Mar 04 #PHP
通用PHP动态生成静态HTML网页的代码
Mar 04 #PHP
php绝对路径与相对路径之间关系的的分析
Mar 03 #PHP
PHP开发中常用的三个表单验证函数使用小结
Mar 03 #PHP
PHP 引用文件技巧
Mar 02 #PHP
php下过滤html代码的函数 提高程序安全性
Mar 02 #PHP
PHP set_time_limit(0)长连接的实现分析
Mar 02 #PHP
You might like
QQ登录 PHP OAuth示例代码
2011/07/20 PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
2014/06/06 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
2017/02/15 PHP
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
2013/12/04 Javascript
jQuery 动态云标签插件
2014/11/11 Javascript
AngularJS实现textarea记录只能输入规定数量的字符并显示
2016/04/26 Javascript
为什么JavaScript没有块级作用域
2016/05/22 Javascript
省市联动效果的简单实现代码(推荐)
2016/06/06 Javascript
功能强大的Bootstrap组件(结合js)
2016/08/03 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
2016/11/29 Javascript
深入浅析JavaScript中的RegExp对象
2017/09/18 Javascript
Vue中computed与methods的区别详解
2018/03/24 Javascript
angularJs中ng-model-options设置数据同步的方法
2018/09/30 Javascript
vue之debounce属性被移除及处理详解
2019/11/13 Javascript
python实现dict版图遍历示例
2014/02/19 Python
python自然语言编码转换模块codecs介绍
2015/04/08 Python
python中os模块详解
2016/10/14 Python
使用Python3制作TCP端口扫描器
2017/04/17 Python
python的文件操作方法汇总
2017/11/10 Python
python3大文件解压和基本操作
2017/12/15 Python
python数据结构学习之实现线性表的顺序
2018/09/28 Python
python爬虫获取新浪新闻教学
2018/12/23 Python
python爬虫爬取幽默笑话网站
2019/10/24 Python
Python数据存储之 h5py详解
2019/12/26 Python
Python 格式化打印json数据方法(展开状态)
2020/02/27 Python
浅谈Python中文件夹和python package包的区别
2020/06/01 Python
Anaconda详细安装步骤图文教程
2020/11/12 Python
Python调用Redis的示例代码
2020/11/24 Python
小女主人连衣裙:Little Mistress
2017/07/10 全球购物
12.4法制宣传日活动总结
2014/08/26 职场文书
2014年小学图书室工作总结
2014/12/09 职场文书
红与黑读书笔记
2015/06/29 职场文书
司法廉洁教育心得体会
2016/01/20 职场文书
Python中快速掌握Data Frame的常用操作
2021/03/31 Python
关于PostgreSQL JSONB的匹配和交集问题
2021/09/14 PostgreSQL
Python的代理类实现,控制访问和修改属性的权限你都了解吗
2022/03/21 Python