梦想加空间 - 一个程序猿的个人博客网站

您現(xiàn)在的位置是:首頁 >php教程 >php教程七 運(yùn)算符網(wǎng)站首頁php教程

php教程七 運(yùn)算符

三只小菜猿 2023-01-30 10:34:39
簡(jiǎn)介下表按照優(yōu)先級(jí)從高到低列出了運(yùn)算符。同一行中的運(yùn)算符具有相同優(yōu)先級(jí),此時(shí)它們的結(jié)合方向決定求值順序。運(yùn)算符優(yōu)先級(jí)中,or 和 ||, 和 and 都是邏輯運(yùn)算符,效果一樣,但是其優(yōu)先級(jí)卻不一樣。我們通過括號(hào)的配對(duì)來明確標(biāo)明運(yùn)算順序,而非靠運(yùn)算符優(yōu)先級(jí)和結(jié)合性來決定,通常能夠增加代碼的可讀性。在 PHP 中,算術(shù)運(yùn)算符 用于把值加在一起。在 PHP 中,賦值運(yùn)算符 用于給變量賦值。另一個(gè)條件運(yùn)算符是?:(或三元)運(yùn)算符。

PHP 運(yùn)算符

在 PHP 中,賦值運(yùn)算符 = 用于給變量賦值。

在 PHP 中,算術(shù)運(yùn)算符 + 用于把值加在一起。

PHP 算術(shù)運(yùn)算符

運(yùn)算符名稱描述實(shí)例結(jié)果
x+xx 和 y 的和2 + 24
x - yx 和 y 的差5 - 23
x * yx 和 y 的積5 * 210
x / yx 和 y 的商15 / 53
x % y模(除法的余數(shù))x 除以 y 的余數(shù)5 % 2
10 % 8
10 % 2
1
2
0
-x設(shè)置負(fù)數(shù)取 x 的相反符號(hào)<?php
$x = 2;
echo -$x;
?>
-2
~x取反x 取反,按二進(jìn)制位進(jìn)行"取反"運(yùn)算。運(yùn)算規(guī)則:
~1=-2;
~0=-1;
<?php
$x = 2;
echo ~$x;
?>
-3
a . b并置連接兩個(gè)字符串"Hi" . "Ha"HiHa

以下實(shí)例演示了使用不同算術(shù)運(yùn)算符得到的不同結(jié)果:

<?php 
$x=10; 
$y=6;
echo ($x + $y); // 輸出16
echo '<br>';  // 換行
 
echo ($x - $y); // 輸出4
echo '<br>';  // 換行
 
echo ($x * $y); // 輸出60
echo '<br>';  // 換行
 
echo ($x / $y); // 輸出1.6666666666667
echo '<br>';  // 換行
 
echo ($x % $y); // 輸出4
echo '<br>';  // 換行
 
echo -$x;
?>

PHP 賦值運(yùn)算符

運(yùn)算符等同于描述
x = yx = y左操作數(shù)被設(shè)置為右側(cè)表達(dá)式的值
x += yx = x + y
x -= yx = x - y
x *= yx = x * y
x /= yx = x / y
x %= yx = x % y模(除法的余數(shù))
a .= ba = a . b連接兩個(gè)字符串

以下實(shí)例演示了使用不同賦值運(yùn)算符得到的不同結(jié)果:

<?php 
$x=10; 
echo $x; // 輸出10
 
$y=20; 
$y += 100;
echo $y; // 輸出120
 
$z=50;
$z -= 25;
echo $z; // 輸出25
 
$i=5;
$i *= 6;
echo $i; // 輸出30
 
$j=10;
$j /= 5;
echo $j; // 輸出2
 
$k=15;
$k %= 4;
echo $k; // 輸出3
?>

以下實(shí)例演示了使用不同字符串運(yùn)算符得到的相同結(jié)果:

<?php
$a = "Hello";
$b = $a . " world!";
echo $b; // 輸出Hello world! 
 
$x="Hello";
$x .= " world!";
echo $x; // 輸出Hello world! 
?>

PHP 遞增/遞減運(yùn)算符

運(yùn)算符名稱描述
++ x預(yù)遞增x 加 1,然后返回 x
x ++后遞增返回 x,然后 x 加 1
-- x預(yù)遞減x 減 1,然后返回 x
x --后遞減返回 x,然后 x 減 1

<?php
$x=10; 
echo ++$x; // 輸出11
 
$y=10; 
echo $y++; // 輸出10
 
$z=5;
echo --$z; // 輸出4
 
$i=5;
echo $i--; // 輸出5
?>

PHP 比較運(yùn)算符

運(yùn)算符名稱描述實(shí)例
x == y等于如果 x 等于 y,則返回 true5==8 返回 false
x === y絕對(duì)等于如果 x 等于 y,且它們類型相同,則返回 true5==="5" 返回 false
x != y不等于如果 x 不等于 y,則返回 true5!=8 返回 true
x <> y不等于如果 x 不等于 y,則返回 true5<>8 返回 true
x !== y不絕對(duì)等于如果 x 不等于 y,或它們類型不相同,則返回 true5!=="5" 返回 true
x > y大于如果 x 大于 y,則返回 true5>8 返回 false
x < y小于如果 x 小于 y,則返回 true5<8 返回 true
x >= y大于等于如果 x 大于或者等于 y,則返回 true5>=8 返回 false
x <= y小于等于如果 x 小于或者等于 y,則返回 true5<=8 返回 true

以下實(shí)例演示了使用一些比較運(yùn)算符得到的不同結(jié)果:

<?php
$x=100; 
$y="100";
 
var_dump($x == $y);
echo "<br>";
var_dump($x === $y);
echo "<br>";
var_dump($x != $y);
echo "<br>";
var_dump($x !== $y);
echo "<br>";
 
$a=50;
$b=90;
 
var_dump($a > $b);
echo "<br>";
var_dump($a < $b);
?>

PHP 邏輯運(yùn)算符

運(yùn)算符名稱描述實(shí)例
x and y如果 x 和 y 都為 true,則返回 truex=6
y=3
(x < 10 and y > 1) 返回 true
x or y如果 x 和 y 至少有一個(gè)為 true,則返回 truex=6
y=3
(x= =6 or y= =5) 返回 true
x xor y異或如果 x 和 y 有且僅有一個(gè)為 true,則返回 truex=6
y=3
(x= =6 xor y= =3) 返回 false
x && y如果 x 和 y 都為 true,則返回 truex=6
y=3
(x < 10 && y > 1) 返回 true
x或 y如果 x 和 y 至少有一個(gè)為 true,則返回 truex=6
y=3
(x= =5或 y= =5) 返回 false
! x如果 x 不為 true,則返回 truex=6
y=3
!(x==y) 返回 true

備注:||或符號(hào)csdn表格中沒法填入會(huì)被轉(zhuǎn)義 還有= =中間加了空格因?yàn)椴患邮菢?biāo)記文本沒法存在==

PHP 數(shù)組運(yùn)算符

運(yùn)算符名稱描述
x + y集合x 和 y 的集合
x == y相等如果 x 和 y 具有相同的鍵/值對(duì),則返回 true
x === y恒等如果 x 和 y 具有相同的鍵/值對(duì),且順序相同類型相同,則返回 true
x != y不相等如果 x 不等于 y,則返回 true
x <> y不相等如果 x 不等于 y,則返回 true
x !== y不恒等如果 x 不等于 y,則返回 true

以下實(shí)例演示了使用一些數(shù)組運(yùn)算符得到的不同結(jié)果:

<?php
$x = array("a" => "red""b" => "green"); 
$y = array("c" => "blue""d" => "yellow"); 
$z = $x + $y; // $x 和 $y 數(shù)組合并
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);
?>

三元運(yùn)算符

另一個(gè)條件運(yùn)算符是"?:"(或三元)運(yùn)算符 。

<?php
// 普通寫法
$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
echo $username, PHP_EOL;
 
// PHP 5.3+ 版本寫法
$username = $_GET['user'] ?: 'nobody';
echo $username, PHP_EOL;

//在 PHP7+ 版本多了一個(gè) NULL 合并運(yùn)算符 ??,實(shí)例如下:
// 如果 $_GET['user'] 不存在返回 'nobody',否則返回 $_GET['user'] 的值
$username = $_GET['user'] ?? 'nobody';
// 類似的三元運(yùn)算符
$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
?>

運(yùn)算符優(yōu)先級(jí)

下表按照優(yōu)先級(jí)從高到低列出了運(yùn)算符。同一行中的運(yùn)算符具有相同優(yōu)先級(jí),此時(shí)它們的結(jié)合方向決定求值順序。

說明:左 = 從左到右,右 = 從右到左。

結(jié)合方向運(yùn)算符附加信息
clone newclone 和 new
[array()
++ -- ~ (int) (float) (string) (array) (object) (bool) @類型和遞增/遞減
instanceof類型
!邏輯運(yùn)算符
* / %算術(shù)運(yùn)算符
+ – .算術(shù)運(yùn)算符和字符串運(yùn)算符
<< >>位運(yùn)算符
== != === !== <>比較運(yùn)算符
&位運(yùn)算符和引用
^位運(yùn)算符
位運(yùn)算符
&&邏輯運(yùn)算符
邏輯運(yùn)算符
? :三元運(yùn)算符
= += -= *= /= .= %= &== ^= <<= >>= =>
and邏輯運(yùn)算符
xor邏輯運(yùn)算符
or邏輯運(yùn)算符
,多處用到

備注:表格中'或'字代表|| ,’位‘字代表 | 。因?yàn)閏sdn表格是md形式|會(huì)被轉(zhuǎn)義沒有辦法填寫

運(yùn)算符優(yōu)先級(jí)中,or 和 ||,&& 和 and 都是邏輯運(yùn)算符,效果一樣,但是其優(yōu)先級(jí)卻不一樣。

<?php
// 優(yōu)先級(jí): &&  >  =  >  and
// 優(yōu)先級(jí): ||  >  =  >  or
 
$a = 3;
$b = false;
$c = $a or $b;
var_dump($c);          // 這里的 $c 為 int 值3,而不是 boolean 值 true
$d = $a || $b;
var_dump($d);          //這里的 $d 就是 boolean 值 true 
?>

代碼輸出結(jié)果:

int(3)
bool(true)

括號(hào)的使用

我們通過括號(hào)的配對(duì)來明確標(biāo)明運(yùn)算順序,而非靠運(yùn)算符優(yōu)先級(jí)和結(jié)合性來決定,通常能夠增加代碼的可讀性。

<?php
// 括號(hào)優(yōu)先運(yùn)算
 
$a = 1;
$b = 2;
$c = 3;
$d = $a + $b * $c;
echo $d;
echo " ";
$e = ($a + $b) * $c;  // 使用括號(hào)
echo $e;
echo " ";
?>

以上實(shí)例輸出結(jié)果為:

7
9


夢(mèng)想加空間!平時(shí)喜歡研究各種技術(shù),目前在從事后端開發(fā)工作,熱愛生活、熱愛工作。
主站蜘蛛池模板: 塑木地板,塑木栏杆,塑木地板价格,塑木地板厂家—浙江尚元塑木制品有限公司 | 移印机厂家_丝印机器设备_全自动丝网印刷机-东莞展迅机械科技 | 连云港海盛石英科技有限公司 | 智汇工业-智慧工业、智能制造及工业智能、工业互联门户网站,专业的工业“互联网+”传媒 | 交通标志牌-交通标牌-铝圆牌-铝三角片-铝滑槽-公路警示指示牌-方牌-高速道路反光牌毛坯-交通设施安全警示标识牌-路名指示限速限高牌-厂家加工交通标牌铝板半成品毛坯-上海吕盟铝业有限公司 | 江苏广分检测技术有限公司、电力安全工具检测、苏州绝缘工具检测、昆山电力安全工具检测-广分检测技术(苏州)有限公司 | 宁波雷豹机电科技有限公司|雷豹冷风机|雷豹工业大风扇|MFC18000|MFC16000|MFC6000|EF3622|EF4222|EF4822|移动工业蒸发式冷风机空气冷却器|大型工业空调扇|雷豹移动式工业大风扇|雷豹大风扇|生产厂家|公司官网 | 液晶拼接屏_三星46寸/55寸/LG液晶拼接屏_深圳拼接墙厂家_电视大屏幕液晶拼接_高清工业级液晶监视器 | 转轮除湿机_工业除湿机_恒温恒湿机-铂克除湿机厂家 | 强德防盗门-防盗门厂家-中国防盗门十大品牌-强德门业 - 浙江臻品工贸有限公司 | 上海礼品公司_定制商务礼品_促销礼品_福利礼品_创意礼品_上海普田商贸有限公司 | 木材粉碎机,树枝粉碎机,木材破碎机厂家 | 上海中医医院_上海名老中医专家门诊_上海徐浦中医医院 | 手持电能质量测量仪-TD-1168多功能高空接线钳-上海妙定电气有限公司 | 信管飞软件官网 - 亚拓软件旗下精细化管理软件、进销存管理软件、混凝土ERP、通风设备ERP、风管报价软件、出纳软件、送货单打印软件、ERP软件等免费下载 | 欧艺宝盾科技(北京)有限责任公司_北京旋转门厂家_转门维修_高端商务门控定制 - | 消字号牙膏代加工|面膜代加工|凝胶贴牌|漱口水贴牌-南京三盾药业有限公司-消字号牙膏代加工|面膜代加工|凝胶贴牌|漱口水贴牌-南京三盾药业有限公司 | 上饶市蚂蚁搬家有限公司,上饶搬家公司,上饶同城搬家,上饶同城搬家电话,上饶搬家哪家好,上饶搬家公司电话 | 在线腐蚀率仪,在线污垢热阻仪,靶式光源仪-北京同德创业科技有限公司 | 宁波必沃纺织机械有限公司—优质针织电脑横机专业制造商 | 医药冷库设计建造-食品保鲜冷库安装-物流冷库工程造价-开冉制冷 医盟网-全国首家医疗信息化行业门户网站 | 离婚协议书怎么写_离婚协议书模板标准版_离婚协议书范本下载 - 离婚协议书 | 秦皇岛天视影像有限公司,宣传片创意拍摄制作,商业广告拍摄公司,影视影像服务商 - 秦皇岛天视影像有限公司,宣传片创意拍摄制作,商业广告拍摄公司,影视影像服务商 秦皇岛市信恒电子科技有限公司 秦皇岛市华谊彩印有限公司 | 消泡剂_有机硅消泡剂_水处理消泡剂_新万成消泡剂厂家 | 上海钧尚电器有限公司 - Faulhaber电机 AMETEK pittman电机 AMETEK ROTRON军用航空风机 Exlar电动缸 MAE电机 MCG电机 CP电动工具 马头工具 AMCI驱动器 直流电机 减速箱 直流伺服电机,无刷电机,直线电机 直流防爆电机 防爆电机 汽车助力转向电机 EPS电机 faulhaber motor faulhaber gearbox NANOTEC电机 ELWOOD电机 PHYTRON电机 EXLAR伺服电动缸 高力矩、高性能直流电机,音圈电机,风机,直流风机,航空风机 | 人防信号控制箱厂家-液位控制器价格-信号灯箱批发厂家-消声加热器-鼎兴自控 | 聚达|聚达物联|聚达物联科技|杭州聚达物联科技有限公司|www.judawulian.com|智慧社区|数字驾驶舱|智慧清运|智慧工地|邻家小达 | 液位变送器_智能压力变送器_3051差压变送器_单双法兰,投入式,电容式,温度变送器-淮安润中仪表科技有限公司 | 潍坊卓瑞机械有限公司,输送设备,石灰消化设备,餐厨垃圾设备,化机浆设备,污泥脱水 | 铁盒|铁罐|马口铁盒|马口铁罐|茶叶铁罐|铁盒-麦氏罐业 | 少妇厨房与子伦_污污内射久久一区二区欧美日韩_四房婷婷 | 锌钢护栏,铁艺护栏,围墙护栏,锌钢围墙护栏,铁艺围墙护栏-互润金属丝网厂 | 长春互联网运营值选星广传媒,长春短视频运营,长春新媒体运营,长春互联网运营,长春抖音运营,吉林视频号代运营,吉林快手代运营,短视频推广公司,公众号运营,微博运营,新媒体运营 | 育婴师_催乳师证_月嫂证怎么考_育婴师证报考需要什么条件-家政培训网 | 输送机|滚筒输送机|皮带输送机|滚筒|无动力滚筒|万向球生产厂家-上海霞韵输送机械设备有限公司 | 真石漆-防火涂料-氟碳漆-地坪漆-广田外墙涂料| 液压支架配件|液压支架立柱|液压支架千斤顶|液压支架换向阀|液压支架乳化油|液压支架密封件-山东卓力生产厂家 | 青州东威机械有限公司,洗沙机,脱水筛、细沙回收机,淘金设备,洗石机,砂石分离机,筛沙机,采沙船,清淤船,破碎制砂机,海沙淡化设备 | 网带式等温正火生产线_燃气式铝合金加热炉_燃气式烘干窑炉-湖州中科炉业科技有限公司 | 石家庄LED显示屏|石家庄显示屏|河北显示屏升级改造|石家庄科航光电科技有限公司_石家庄科航光电科技有限公司 | 智能照明模块_智能照明控制器_照明控制系统_智能调光模块_西安邦华电气工程有限公司 |