PHP(四)运算符、表达式和语句
为什么80%的码农都做不了架构师?>>>
算术运算符
加减乘除
跟生活中的一样。
注意运算顺序:先乘除,后加减(因为运算符优先级不一样,算术运算中同级运算符从左至右运算)。
更多优先级的资料看这里
求模
求模也叫做求余,运算符为`%`。
取反
代码:
<?php
$a = 5;
$b = -$a;
var_dump($b);
?>
效果:
int -5
在变量前面缀上-进行取反,如果$a是字符串,运算结果将会是0
赋值运算符
=
赋值操作的顺序为从右到左。
自运算符
<?php
$a = 5;
$a = $a + 5;
var_dump($a);
?>
上面的代码等价于下面的:
<?php
$a = 5;
$a += 5;
var_dump($a);
?>
运算符”+=“是一个操作符,因此加号和等号要连在一起,中间没有空格。它实现的操作是在自身(运算符左边的值)的基础上,加上右边的值。
类似的有”-=“,”*=“,”/=“,”%=“。
递增/递减运算符
自加1或者自减1,PHP提供了更为优化的运算操作符”++“,”-- “。
++$a与$a++的区别:
前一个被称为前置运算(prefix),后一个被称为后置运算(postfix)。
前置运算先进行自加运算,然后运算过的变量参加那条语句的其他运算。
后置运算先使用未自加的变量参与那条语句的其他运算,然后再进行自加运算。
字符串运算符
连接运算符”.“,就是一个点。返回其左右参数连接后的字符串。
连接赋值运算符”.=“,是一个点和一个等号,中间没有空格。将其右边参数附加到左边的参数后。
比较运算符
比较运算符允许对两个值进行比较,所得的结果为逻辑值true(真)或者false(假),也就是布尔值。
逻辑运算符
逻辑运算有以下4个操作符:
!(非,取逻辑反,NOT)
&&(逻辑与,并且,AND)
||(逻辑或,或者,OR,在键盘上Enter上面可以打出来)
Xor(逻辑异或)
<?php//And(逻辑与)
$a and $b;//Or(逻辑或)
$a or $b;//Xor(逻辑异或)
$a xor $b;//Not(逻辑非)
! $a;//And逻辑与
$a && $b;//Or(逻辑或)
$a || $b;?>
在代码中可以看出运算符&&(与)和||(或)有两种表示方法。这是因为在PHP中,这两种不同的运算符优先级不一样。符号&&和||高于文字and和or,类似于运算符优先级乘除大于加减。
位运算符
位运算符允许对整型数中指定的位进行置位。
在编程中,一个字节由8个bit组成,例如 0010 1001,这表示一个字节。 置位的意思是将某一个bit设置为1,如将 0010 1001的第七位置位,置位后即为 0010 1011。 与置位相对应的是复位,复位是将某一个bit设置为0,编程中通常使用RESET进行复位,如将 0010 1001的第八位复位,复位后即为 0010 1000。 |
$a&$b,And(按位与)将把$a和$b中都为1的位设为1
$a | $b,Or(按位或)将把$a或者$b中为1的位设为1
$a ^ $b,Xor(按位异或)将把$a和$b中不同的位设为1
~$a,Not(按位非)将$a中为0的位设为1,反之亦然
$a << $b,将$a中的位向左移动$b次(每一次移动都表示”乘以2“)
$a >> $b,将$a中的位向右移动$b次(每一次移动都表示”除以2“)
注意:在32位系统上不要右移超过32位。不要在结果可能超过32位的情况下左移。
其实这一段我不懂
执行运算符
PHP支持一个执行运算符,反引号``。这不是单引号(普通键盘上,大键盘数字区域最左边前面一个标有波浪号~和反引号的键`),PHP尝试将执行运算符(反引号)中的内容作为外壳命令来执行,并将其输出信息返回(例如,可以赋给一个变量而不是简单的丢到标准输出,使用反引号运算符的效果与函数shell_exec()相同)。这个通常用来执行操作系统命令。
错误控制运算符
PHP支持一个错误控制运算符@。当@放在一个PHP表达式之前,该表达式可能产生的任何错误信息都会被忽略掉。
@运算符只对表达式有效。例如,可以放在变量、函数和include()调用、常量等之前,而不能够放在函数或类的定义前,也不能用于条件结构前。
错误控制符通常用于忽略脚本中可有可无的错误信息,比如打开某些网站的时候,就发现页面顶部打印出一些莫名其妙的脚本警告信息,实质上这些错误并不影响脚本运行,但有了这些警告信息就会影响页面美观,这时候就该使用错误控制运算符。
表达式和语句
表达式
变量、常量、各种运算符等组成了表达式,表达式用于表达一个计算过程。
表达式最基本的形式是变量和常量。 在我理解表达式就是用来表达一个东西的玩意。
语句
通常所说的语句是指一些表达式的组合,能够完成一件事情,才叫语句。
注释
注释有三种:
/* */ 中间不可以嵌套。快捷键为shift+ctrl+/
# 单行注释
// 单行注释
转载于:https://my.oschina.net/Sivir/blog/548598
PHP(四)运算符、表达式和语句相关推荐
- 《C Primer Plus》第五章-运算符 表达式和语句(笔记、复习题、编程题,副作用和序列点,升降级)
文章目录 运算符 表达式和语句 本章内容 循环简介 基本运算符 赋值运算符:= 几个术语:数据对象.左值.右值和运算符 加法运算符:+ 减法运算符:- 5.2.4 符号运算符:-和+ 乘法运算符:* ...
- 第五章运算符表达式和语句
title: 第五章 运算符.表达式和语句 author: HardyDragon tags: C Notes 第五章 运算符.表达式和语句 5.1 循环简介 5.2 基本运算符 5.2.1 赋值运算 ...
- C | 运算符、表达式和语句
目录 一.循环简介 二.基本运算符 2.1 赋值运算符:= 2.2 加法运算符:+ 2.3 减法运算符:- 2.4 符号运算符:-和+ 2.5 乘法运算符:* 2.6 除法运算符:/ 2.7 运算符优 ...
- Java篇第三回——运算符、表达式与语句(C不好的也快来)
CONTENT 一.运算符.表达式 1.算七精 2.关六七 3.逻三布 4.赋右左 5.位四四 6.instanceof运算符 7.小结 二.语句 1.类型:方表复空控p 2.为啥会学不会的分支语句和 ...
- C语言之运算符,表达式和语句总结
目录 前言 一.各种运算符 Ⅰ.算术运算符 Ⅱ.赋值运算符 Ⅲ.关系运算符 Ⅳ.逻辑运算符 Ⅴ.条件运算符(?:) Ⅵ.逗号运算符(,) Ⅶ.位运算符 Ⅷ.其他运算符 二.优先级大总结 三.类型转换 ...
- IOT嵌入式物联网----运算符,表达式和语句
系列文章目录 零 ---- 千里之行,始于足下 壹 ---- 嵌入式C语言编程 一.运算符.表达式和语句的概念 运算符是一种告诉编译器执行特定的数学或逻辑操作 的符号, C 语言内置了 ...
- python基本对象_python基础教程:运算对象、运算符、表达式和语句
编程的本质就是数据和运算,数据由基本数据类型.数据结构来表示,运算就是对这些数据的各种操作,基本的加减乘除.是非判断.流程控制等等.这些操作就是今天我们要讲的运算符.表达式和语句. 前面我们学习Pyt ...
- Java 运算符、表达式、语句
文章目录 1. 运算符 2. 表达式 3. 语句 1. 运算符 赋值运算 = +, -, *, /, % 算术运算 +, -, !, ~ 一元运算 关系运算 >, <, >=, &l ...
- java表达式语句_Java基础知识笔记第三章:运算符表达式语句
算术运算符与表达式 操作符描述例子 + 加法 - 相加运算符两侧的值 A + B 等于 30 - 减法 - 左操作数减去右操作数 A – B 等于 -10 * 乘法 - 相乘操作符两侧的值 A * B ...
- C语言基础之5:运算符、表达式和语句
Tips1: 关键字:while.typedef 运算符:=.-.*./.%.++.--.(类型名) C语言的各种运算符,包括用于普通数学运算的运算符 运算符优先级以及语句.表达式的含义 while循 ...
最新文章
- PCL中3D特征描述子Shot详解
- 安装SecureCRT
- mysql8.0 zip安装教程
- LeetCode 38外观数列39组合总和
- 【Storm篇】--Storm并发机制
- vuejs 过渡效果
- Keil | 解决Keil与Source Insight4.0配合使用时,代码与注释位置(乱码)不一样的问题
- spring mvc controller间跳转 重定向 传参 (转)
- 串口屏储存器不够,自己扩展怎么操作?
- SQL数据库笛卡尔积、投影、选择、连接运算
- RRDTool 中文手册-简易入门
- K8S 生态周报| Docker V2 GitHub Action 宣布 GA
- 【乌拉喵.教程】IIC总线介绍及FPGA编程
- Springboot毕设项目高校社团信息管理系统gtt2u(java+VUE+Mybatis+Maven+Mysql)
- 使用GDI+将24位真彩色图像转换为8位灰度图像
- java环境配置+marven+vue(勿看)
- 八爪鱼采集列表和详情信息
- 围观五四青年节优秀借势文案-爱豆子
- html计算器重置按钮,在Windows 10中重置和重新安装计算器 | MOS86
- ug nx/open二次开发cam部分之刀具的创建