php 运算符与表达式详细介绍


Posted in PHP onNovember 30, 2016

php 运算符与表达式

一、运算符的分类

1、按操作数分类

1.!true // 一元运算符
2.$a+$b // 二元运算符
3.true ? 1:0 // 三元运算符

2、按操功能分类

(1)算术运算符
1.+、-、x、/、%(取余)

(2)字符串运算符
1..  // 例如:$a = 'abc'.'efg';

(3)赋值运算符

1.= // 简单赋值
2.+=、-=、X=、/=、%=、.= // 复合赋值
3.++($a++、++$a)、 --($a--、--$a) // 递增递减
4.&($a = 1;$b = &a) // 引用赋值

(4)比较运算符

1.==、 ===(恒等于)、 !=、 !===、 <>(不等于)、 <、 >、 <=、 >=

(5)逻辑运算符
1.// 括号内的比括号外的优先级高
2.&&(and)、 ||(or)、 !(not)、 xor(异或)、

(6)位运算符
1.&(按位与)、 |(按位或)、 ~(按位非)、 ^(按位异或)、 <<(左位移)、 >>(右位移)

二、算术运算符

%取余,常见用法:1)整除运算 2)控制取值范围

实例:判断是否为闰年(四年一闰,百年不闰,四百年再闰)

// %会把两边的数转成整型后在整除
// %两边不能用小数或负数
if ((($year%4 == 0) && ($year%100 != 0)) || $year%400 == 0)
echo "闰年";
else
echo "平年";

三、赋值运算符

//先自身加10,然后赋值给自己,等价于 $a=$a+10
$a += 10;
 
//前置递增递减,先递增递减再赋值
++$a

//先赋值,再递增递减
$a++ 
//实例
$a = 10;
$b = $a++
$c = --$b
结果:a=11 b=9 c=9

四、逻辑运算符

xor异或:相同为假(两个真或两个假=假),不同为真(一真一假=假)
Tips:注意与or区别,or两个真=真
逻辑运算符短路
1、&& //一个为假,则后面不作运算,一定为假
2、|| //一个为真,则后面不作运算,一定为真

fopen ("test.php","r") or die("失败");

Tips:为运算符 & | 没有短路特性

五、位运算符

位操作:将整型转为32位二进制,字符串转为ANSCA码来处理

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
php查看session内容的函数
Aug 27 PHP
php miniBB中文乱码问题解决方法
Nov 25 PHP
一个简单php扩展介绍与开发教程
Aug 19 PHP
PHP MySQL应用中使用XOR运算加密算法分享
Aug 28 PHP
解析htaccess伪静态的规则
Jun 18 PHP
解析php中如何直接执行SHELL
Jun 28 PHP
让CodeIgniter的ellipsize()支持中文截断的方法
Jun 12 PHP
ThinkPHP访问不存在的模块跳转到404页面的方法
Jun 19 PHP
PHP中ID设置自增后不连续的原因分析及解决办法
Aug 21 PHP
PHP不使用内置函数实现字符串转整型的方法示例
Jul 03 PHP
PHP面向对象五大原则之接口隔离原则(ISP)详解
Apr 04 PHP
Apache+PHP+MySQL搭建PHP开发环境图文教程
Aug 06 PHP
PHP AjaxForm提交图片上传并显示图片源码
Nov 29 #PHP
php判断是否为ajax请求的方法
Nov 29 #PHP
PHP判断文件是否被引入的方法get_included_files用法示例
Nov 29 #PHP
php获取开始与结束日期之间所有日期的方法
Nov 29 #PHP
PHP精确计算功能示例
Nov 29 #PHP
PHP 搜索查询功能实现
Nov 29 #PHP
php Session无效分析资料整理
Nov 29 #PHP
You might like
PHP入门教程之面向对象基本概念实例分析
2016/09/11 PHP
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
JS弹出对话框返回值代码(asp.net后台)
2010/12/28 Javascript
使用原生javascript创建通用表单验证——更锋利的使用dom对象
2011/09/13 Javascript
完美解决AJAX跨域问题
2013/11/01 Javascript
js实现连个数字相加而不是拼接的方法
2014/02/23 Javascript
Nodejs学习笔记之入门篇
2015/04/16 NodeJs
Java Mybatis框架入门基础教程
2015/09/21 Javascript
Bootstrap每天必学之js插件
2015/11/30 Javascript
使用jQuery判断浏览器滚动条位置的方法
2016/05/30 Javascript
浅析jQuery操作select控件的取值和设值
2016/12/07 Javascript
基于jQuery实现左侧菜单栏可折叠功能
2016/12/27 Javascript
基于vue-upload-component封装一个图片上传组件的示例
2018/10/16 Javascript
玩转Koa之koa-router原理解析
2018/12/29 Javascript
详解使用Nuxt.js快速搭建服务端渲染(SSR)应用
2019/03/13 Javascript
详解新手使用vue-router传参时注意事项
2019/06/06 Javascript
JS实现点击生成UUID的方法完整实例【基于jQuery】
2019/06/12 jQuery
详解Vue 换肤方案验证
2019/08/28 Javascript
Vue 实例事件简单示例
2019/09/19 Javascript
JavaScript实现指定数量的并发限制的示例代码
2020/03/10 Javascript
微信小程序实现菜单左右联动
2020/05/19 Javascript
[01:15:12]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#4Newbee VS CDEC
2016/03/03 DOTA
[00:32]2018DOTA2亚洲邀请赛iG出场
2018/04/03 DOTA
python实现红包裂变算法
2016/02/16 Python
Python求两个圆的交点坐标或三个圆的交点坐标方法
2018/11/07 Python
对python 多个分隔符split 的实例详解
2018/12/20 Python
解决Django中修改js css文件但浏览器无法及时与之改变的问题
2019/08/31 Python
Python3实现配置文件差异对比脚本
2019/11/18 Python
你可能不知道的Python 技巧小结
2020/01/29 Python
使用python-pptx包批量修改ppt格式的实现
2020/02/14 Python
加大码胸罩、内裤和服装:Just My Size
2019/03/21 全球购物
技术经理的自我评价范文
2013/12/03 职场文书
积极向上的团队口号
2014/06/06 职场文书
走进毛泽东观后感
2015/06/04 职场文书
生产车间管理制度
2015/08/04 职场文书
python周期任务调度工具Schedule使用详解
2021/11/23 Python