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 文本文章分页代码 按标记或长度(不涉及数据库)
Jun 07 PHP
解析PHP缓存函数的使用说明
May 10 PHP
ThinkPHP的模版中调用session数据的方法
Jul 01 PHP
php两种无限分类方法实例
Apr 21 PHP
PHP常见漏洞攻击分析
Feb 21 PHP
PHP HTTP 认证实例详解
Nov 03 PHP
php自定义时间转换函数示例
Dec 07 PHP
PHP文件与目录操作示例
Dec 24 PHP
PHP使用curl_multi实现并发请求的方法示例
Apr 29 PHP
Ajax请求PHP后台接口返回信息的实例代码
Aug 21 PHP
实例讲解php实现多线程
Jan 27 PHP
php数组指针函数功能及用法示例
Feb 11 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
一个MYSQL操作类
2006/11/16 PHP
php文件下载处理方法分析
2015/04/22 PHP
使用PHP如何实现高效安全的ftp服务器(一)
2015/12/20 PHP
PHP实现微信网页授权开发教程
2016/01/19 PHP
PHP获取redis里不存在的6位随机数应用示例【设置24小时过时】
2017/06/07 PHP
Javascript之文件操作
2007/03/07 Javascript
在textarea中显示html页面的javascript代码
2007/04/20 Javascript
javascript 显示当前系统时间代码
2009/12/28 Javascript
用Js实现的动态增加表格示例自己写的
2013/10/21 Javascript
基于jQuery实现自动轮播旋转木马特效
2015/11/02 Javascript
javascript实现全角转半角的方法
2016/01/23 Javascript
JavaScript设置名字输入不合法的实现方法
2017/05/23 Javascript
基于 webpack2 实现的多入口项目脚手架详解
2017/06/26 Javascript
详解nodejs实现本地上传图片并预览功能(express4.0+)
2017/06/28 NodeJs
MUI实现上拉加载和下拉刷新效果
2017/06/30 Javascript
jQuery实现表格冻结顶栏效果
2017/08/20 jQuery
jQuery选择器之子元素选择器详解
2017/09/18 jQuery
深入理解Node.js中通用基础设计模式
2017/09/19 Javascript
jQuery实现可兼容IE6的遮罩功能详解
2017/09/19 jQuery
Vue动态加载异步组件的方法
2018/11/21 Javascript
vue2.0移动端滑动事件vue-touch的实例代码
2018/11/27 Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
2019/11/29 Javascript
微信小程序关键字变色实现代码实例
2019/12/13 Javascript
微信小程序点击view动态添加样式过程解析
2020/01/21 Javascript
[06:44]2018DOTA2亚洲邀请赛4.5 SOLO赛 MidOne vs Sumail
2018/04/06 DOTA
TensorFlow用expand_dim()来增加维度的方法
2018/07/26 Python
python3实现高效的端口扫描
2019/08/31 Python
Django静态文件加载失败解决方案
2020/08/26 Python
美国波道夫·古德曼百货官网:Bergdorf Goodman
2017/11/07 全球购物
英国工作场所设备购买网站:Slingsby
2019/05/03 全球购物
美国浴缸、水槽和水龙头购物网站:Vintage Tub & Bath
2019/11/05 全球购物
ruby如何进行集成操作?Ruby能进行多重继承吗?
2013/10/16 面试题
酒店行政人事部经理职务说明书
2014/02/26 职场文书
反邪教宣传工作方案
2014/05/07 职场文书
利用Nginx代理如何解决前端跨域问题详析
2021/04/02 Servers
Canvas三种动态画圆实现方法说明(小结)
2021/04/16 Javascript