PHP运算符

PHP运算符



算术运算符:

有以下几个:+ ,- ,* ,/ ,% ,++ ,--

注意:取余运算%,先取整,再取余

$v1 = 7.5%3;    //结果为:1

$v2 = 7.5%3.5;  //结果为:1

对比JS中:(JS中不会进行取整处理)

var v1 = 7.5%3;    //结果是:1.5

var v2 = 7.5%3.5;  //结果是:0.5

自增自减运算符:

常规:对数字进行自加1或自减1

字符串:只能自增,且自增的效果就是“下一个字符”

布尔值递增递减无效

null递减无效,递增结果为1

前自增和后自增的区别:

前++:先完成变量的递增运算,再取得该变量的值参与别的运算

后++:先将原来变量的值临时存储,再将变量值递增,最后再将临时存储的值参与别的运算

推论1:如果独立语句中时行自加运算,前自加后自加没有区别

推论2:如果前++后++放在别的语句中,则会有所区别

推论3:前++比后++效率略高(在循环中建议使用前++)

比较运算符:

包括:> >= < <= ==(松散相等) != ===(严格相等) !==

==与===的区别:

==:松散相等,比较的是两个数据“类型转换之后”是否有可能相等,也常常认为是“数据内容是否相等。

===:严格相等,全等,只有两个数据的类型与数据的内容都完全一致,才相等。

参考手册》附录》类型比较表

常见不同类型的比较(主要指标量类型的数据):

有布尔值,均转为布尔值比较,规则:true > false

否则,如果有数字,均转为数字比较

否则,如果两边都是纯数字字符串,转为数字比较

否则就按字符串比较。    “abc35" > "abc123"  结果为:true

字符串的比较规则为:按字符的先后顺序依次一个一个比较,发现哪个大,则就表示整体大,后续不再比较。

逻辑运算符:&& || !

前提:都是针对布尔类型的值进行的运算,如果不是布尔,就会转换为布尔。

逻辑与:&&

规则(真值表):

true&&true =>true

true&&false =>false

false&&true =>false

false&&false =>false

只有两个都是true,结果才是true;或者只要有一个是false,结果就为false

逻辑或:||

规则(真值表):

true||true =>true

true||false =>true

false||true =>true

false||false =>false

只有两个都是false,结果才是false;或者只要有一个是true,结果变为true

逻辑非:

!true =>false;

!false =>true;

短路现象之逻辑与短路:


在实际应用中,参与逻辑运算的数据,往往都不是直接的布尔值,而是有关计算之后的布尔结果值。大致如下:

if(IsFemale($uName) && IsAge($uName) >18) {

......echo "Lady first";

}

此时,如果IsFemale()函数判断的结果是false,那么后续的函数isAage(),就不再调用,自然也不再进行大于18的判断,这就称为“短路现象”。

短路现象之逻辑或短路:

if(IsFemale($uName) || IsAge($uName) <18) {

......echo "Children or women first";

}

此时,如果IsFemale()函数判断的结果是true,那么后续的函数isAage(),就不再调用,自然也不再进行小于18的判断,这就是“或运算符短路现象”。

字符串运算符:只有一个:“.”,衍生出一个“.=”,会将运算符两边的数据转换为字符串。

对比JS:+ (具有双重含义,此时就需要一定的“判断”)

赋值运算符:只有一个:“=”,衍生出多个:+=,-=,*=,/=,%=,.=

条件(三目)运算符:

一般的运算符需要2个数据参与。

有几个运算符只需要一个数据参与:++,--,!

条件运算符就需要至少3个数据参与,形式为:数据1 ? 数据2 :数据3;

通常,数据1最终应该是一个布尔值(如果不是,则会当作布尔值来使用)。

含义:

如果数据1为true,则运算结果为数据2,否则运算结果为数据3

举例:

$score = 66;

$result = $score >= 60 ? "及格" : "不及格";    //结果为:及格

时间: 2024-08-05 11:12:25

PHP运算符的相关文章

java中的三元运算符详解

最近在带领实习生中遇到很多新手问与三元运算符有关的java题目,多数为代码结果题,少数为应用题.鉴于很多资料上对于java三元运算的讲解过于简单,网上的资料与题目也不是很完善,对于结果答案分析不一,故在此总结,当然仅为个人观点,水平有限,不足之处,还请大家多多指出,互相交流学习. 什么是java三元运算符呢?无疑其操作元有三个,第一个是条件表达式,剩余两个为值,条件表达式为真时运算取第一个值,为假时取第二个值. 其示例代码如下:boolean a = 20 < 45 ? true : false

Mysql运算符与函数(胖胖老师)

use test;create table `employee`(    emp_no int unsigned,    emp_name varchar(30),    emp_sex varchar(3),    emp_age tinyint unsigned,    sal double,    history datetime);insert into employee values(1, '张三', '男', 18, 5000, '2012-04-23'),(2, '李四', '男'

MySQL数据库中的算术运算符

MySQL数据库中的算数运算符 MySQL数据库中的算术运算符 一.运算符的概述: 运算符在MySQL数据库中也是很重要的知识体,在执行sql语句的时候这个运算符对操作数据帮助很大.其中运算符的运用可以帮助你减省大量的时间,操作起来也比较灵活. 二.运算符 运算符主要包括"算数运算符"."比较运算符"."罗运算符"."位运算符"四大类,下面我们就一次学习一下. 1.算术运算符 算术运算符在sql语句的时候经常使用,例如对表的字

重载&gt;&gt;运算符

#include <iostream>   #include <stdio.h>   using namespace std;   class Input   {       public:          //实际重载是右移运算符          Input & operator >> (int &a)          {              scanf("%d",&a);              fflush

JS中的运算符&amp;JS中的分支结构

一.JS中的运算符 1.算术运算(单目运算符) + 加.- 减.* 乘./ 除.% 取余.++ 自增.-- 自减 >>> +:有两种作用,连接字符串/加法运算.当+两边全为数字时,进行加法运算: 当+两边有任意一边为字符串时,起连接字符串的作用,连接之后的结果为字符串 除+外,其余符号运算时,会先尝试将左右变量用Number函数转为数字 >>> /: 结果会保留小数点 >>> ++: 自增运算符,将变量在原有基础上+1: --: 自减运算符,将变量在原

java基础语言 运算符

/* ++,--运算符的使用: 单独使用: 放在操作数的前面和后面效果一样.(这种用法是我们比较常见的) 参与运算使用: 放在操作数的前面,先自增或者自减,然后再参与运算. 放在操作数的后面,先参与运算,再自增或者自减. 作用:就是对变量进行自增1或者自减1. */ public class Text3 { public static void main(String[] args) { //定义两个变量 int x = 3; int y = 4; //单独使用 //x++; //y--; ++

集合和三元运算符

一.三元运算符 如下判断可以使用三元运算更方便的实现: a = 1b = 2 if a > 1: c = aelse: c = b 和下面是一样的: a = 1b = 2#下面这个c = a if a>1 else b 如下两种方法也是一样的:方式一: s=[]nums = list(range(1,11))for i in nums: if i%2==0: s.append(i)print(s)方式二:ss = [i for i in nums if i%2==0]print(ss)#这两种

2_C语言中的数据类型 (八)运算符

1          运算符表达式和语句 1.1       基本运算符 1.1.1          = 数据对象:泛指数据在内存的存储区域 左值:表示可以被更改的数据对象 右值:能赋给左值的量 1.1.2          + 加 1.1.3          – 减 1.1.4          * 乘 1.1.5          / 除 1.1.6          % 取余数 1.1.7          += 加等于 1.1.8          -= 减等于 1.1.9     

(17)Powershell中的重定向运算符

默认情况下,Powershell 把输出发送到屏幕显示.但是,Powershell也可以将输出重定向至一个文本文件,或将错误输出重定向至常规输出流. 重定向运算符有什么用 ? 重定向运算符意味着我们可以将命令的输出信息输出到指定的文件,完全满足脚本中的log的要求,即可以利用重定向打印脚本或命令执行的详细信息. Powershell 中有以下重定向运算符. 运算符 说明 示例 > 将输出发送到指定文件. PS D:\> Get-Process > process.txt >>

(18)Powershell中的字符串拆分运算符

Powershell中提供了对字符串的拆分操作运算符.-split 运算符将一个字符串拆分成多个字符串. 拆分运算符 拆分运算符用于将一个或多个字符串拆分为多个子字符串.可更改拆分操作的以下元素: (1)定界符.默认为空白,但是可指定字符.字符串.模式或用于设置定界符的脚本块. (2)子字符串的最大数目.默认设置为返回所有子字符串.如果指定的数字小于子字符串数,则其余子字符串将合并到最后一个子字符串中. (3)用于指定定界符匹配条件的选项,如 SimpleMatch 和 Multiline. 拆