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 REMOTE_ADDR之获取访客IP的代码
Apr 22 PHP
PHP生成唯一的促销/优惠/折扣码(附源码)
Dec 28 PHP
深入PHP内存相关的功能特性详解
Jun 08 PHP
解析PHP中intval()等int转换时的意外异常情况
Jun 21 PHP
关于php支持分块与断点续传文件下载功能代码
May 09 PHP
php给图片添加文字水印方法汇总
Aug 27 PHP
php实现微信发红包
Dec 05 PHP
Yii2 rbac权限控制之rule教程详解
Jun 23 PHP
php 输入输出流详解及示例代码
Aug 25 PHP
PHP利用超级全局变量$_GET来接收表单数据的实例
Nov 05 PHP
PHP PDOStatement::execute讲解
Jan 31 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
PHP 验证码不显示只有一个小红叉的解决方法
2013/09/30 PHP
php实现的双向队列类实例
2014/09/24 PHP
谈谈 PHP7新增功能
2015/12/16 PHP
PHP的邮件群发系统phplist配置方法详细总结
2016/03/30 PHP
PHP简单计算两个时间差的方法示例
2017/06/20 PHP
JSON JQUERY模板实现说明
2010/07/03 Javascript
IE6下CSS图片缓存问题解决方法
2010/12/09 Javascript
jQuery LigerUI 使用教程入门篇
2012/01/18 Javascript
jquery mobile的触控点击事件会多次触发问题的解决方法
2014/05/08 Javascript
jQuery简单操作cookie的插件实例
2016/01/13 Javascript
JS中多步骤多分步的StepJump组件实例详解
2016/04/01 Javascript
JavaScript实现水平进度条拖拽效果
2017/01/18 Javascript
react开发中如何使用require.ensure加载es6风格的组件
2017/05/09 Javascript
详解利用 Express 托管静态文件的方法
2017/09/18 Javascript
jquery实现图片跟随鼠标的实例
2017/10/17 jQuery
微信小程序实现下载进度条的方法
2017/12/08 Javascript
vue--vuex详解
2019/04/15 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
2019/07/13 Javascript
解决layer.open弹出框不能获取input框的值为空的问题
2019/09/10 Javascript
python jieba分词并统计词频后输出结果到Excel和txt文档方法
2018/02/11 Python
Python基于递归算法实现的汉诺塔与Fibonacci数列示例
2018/04/18 Python
Python绘制正余弦函数图像的方法
2018/08/28 Python
Python redis操作实例分析【连接、管道、发布和订阅等】
2019/05/16 Python
python3 sorted 如何实现自定义排序标准
2020/03/12 Python
Tensorflow加载Vgg预训练模型操作
2020/05/26 Python
python怎么判断模块安装完成
2020/06/19 Python
Python爬虫基于lxml解决数据编码乱码问题
2020/07/31 Python
Python面向对象特殊属性及方法解析
2020/09/16 Python
CSS3 实现的缩略图悬停效果
2020/12/09 HTML / CSS
使用CSS3制作版头动画效果
2020/12/24 HTML / CSS
Html5大文件断点续传实现方法
2015/12/05 HTML / CSS
萌新HTML5 入门指南(二)
2020/11/09 HTML / CSS
标记环介质访问控制协议
2016/03/27 面试题
委托书模板
2014/04/04 职场文书
法学专业毕业生自荐信
2014/06/11 职场文书
小学副班长竞选稿
2015/11/21 职场文书