亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

三元運算的提問

<?php
$a=80;
($b=$a>=60)?("及格"):("不及格");
echo $b;
?>
這樣輸出的結果為什么是1 呢?

正在回答

5 回答

你括起來之后得到比較出的結果為ture,然后賦值給變量b,在php里面ture代表的值為1而false代表的值為0,所以輸出1。

0 回復 有任何疑惑可以回復我~
#1

慕用4111669

打錯了 是true
2017-08-08 回復 有任何疑惑可以回復我~

這是c語言里面講的比較運算,可以百度一下具體運算方法

0 回復 有任何疑惑可以回復我~

<?php
$a=80;
$c = ($b=$a>=60)?("及格"):("不及格");
echo $b; //輸出 1
echo $c; // 輸出 及格

?>

三元運算符 簡單來說

? 前面是條件?($b=$a>=60) 值為真 返回:前面的值 反之返回后面的值

0 回復 有任何疑惑可以回復我~

首先>=的等于優先級高于=,先判斷$a>=60,條件成立,返回true的值為1,把1賦值給$b,因為($b=$a>=60)?("及格"):("不及格");沒有存在的容器,所以不會有判斷的結果,想獲取及格或者不及格$b=($b=$a>=60)?("及格"):("不及格");想獲取$b的分數($b=&$a>=60)?("及格"):("不及格");

3 回復 有任何疑惑可以回復我~

三元運算符從左到右運算,先算$b=$a>=60。而$b=$a>=60中? >= ?優先級比? = ?優先級高,先運算>=符號,即80>=60得到1,再將1賦給$b。輸出的結果$b就是1了。

6 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
PHP入門篇
  • 參與學習       456351    人
  • 解答問題       6590    個

PHP入門教程輕松學習,行業大牛幫您快速掌握PHP編程基礎知識。

進入課程

三元運算的提問

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號