關於php三元運算子的優先順序問題。請教

2021-04-28 17:35:15 字數 1478 閱讀 2925

1樓:夐小栩

我勒個去來,執行了一下竟源然真是b,

我還以為是a

查下了資料才知道,自己覺得有個規律,先問號,再冒號($i == 2 ? "a" : $i == 1 )? 'b' : 'c';

這樣就是a ? 'b' : 'c';

a為真,所以是b

2樓:匿名使用者

因為php中三來元運算子是從左向右計算源的。所以計算的步驟應該是:

$i=2;

echo $i==2 ? 'a':$i==1//這裡已經得出 結果是 "a" ,後面的 $i==1 返回的結果是真,這項作為一個結果。

//下一步

"a"? 'b' : 'c';

//因為php的弱語言特性, 「a」 被認為是 true ,所以返回是 'b'

3樓:

三元運算子的優先順序是從右到左的,因此上面順序是:

$i = 2;

先執行內:($i == 2 ? "a" : $i == 1)然後再執行 (? 'b' : 'c';)

假設第一個執行的結果是 $ret 那麼$ret的值容為a;

那麼第二個可以寫成

$ret?'b':'c';

因$ret的值為a,是真值,所以結果是b。

php 三元運算子問題

4樓:匿名使用者

$suppliers_id = isset($_request['suppliers_id']) ? (empty($_request['suppliers_id']) ? '' :

trim($_request['suppliers_id'])) : '';

如果isset($_request['suppliers_id']) 引數被設定了並且不是空專那麼$suppliers_id=trim($_request['suppliers_id'])) ;否則

屬$suppliers_id="";

5樓:匿名使用者

如果isset($_request['suppliers_id']) 的值

為真 $suppliers_id的值就等於(empty($_request['suppliers_id']) 否則回答

等於trim($_request['suppliers_id']))

6樓:匿名使用者

同樓上的! luke 路過。。。。

7樓:帥櫻艾沛柔

你好,這裡三元運算子的意思是

$id是不是為空,不是的話為yes,是的話輸出no因為$id=0,所以$id為空,屬於輸出了no希望你的問題能解決,望採納

php中三元運算子如何表示當前值為空時捨棄這個條件

C語言運算子優先順序,C語言運算子優先順序順序

優先順序運算子。名稱或含義。使用形式。結合方向說明。陣列下標。陣列名 常量表示式 左到右。圓括號 表示式 函式名 形參表 成員選擇 物件 物件。成員名。成員選擇 指標 物件指標 成員名。負號運算子。表示式。右到左單目運算子。型別 強制型別轉換。資料型別 表示式。自增運算子。變數名 變數名 單目運算子...

c 中關於等運算子優先順序的運算

你的四個式子是在同一個程式中的且是依此的吧?若是,運算如下i 與 i的區別 i 是先令i參加其它運算,然後再令i加1 而 i是先令i加1,然後再令i參加其它運算。同 對 i j 相當於2 4 6上式運算完後i變為3,j變為4。對 j 5 j i j 5相當於3 5 15,此時j變為3,i也為3,j ...

怎麼在三元運算子中巢狀if語句,三元運算子怎麼巢狀

三元運算子中是可以巢狀的 document.write confirm 結婚了嗎?confirm 有孩子了嗎?已結婚且有孩子 已結婚但還沒孩子,準備在這個時間要孩子 prompt 什麼時候要孩子?沒結婚,準備在這個時間結婚 prompt 什麼時候結婚?但是如果巢狀比較複雜的話,建議還是用if語句來寫...