本文目錄一覽:
- 1、運算符的php
- 2、運算符」in」和」=」在嵌套查詢中的使用區別
- 3、php中運算符有哪些,它們之間的優先順序又是怎樣?
- 4、資料庫in的用法
- 5、第十二講 PHP 邏輯運算符
- 6、php報錯問題Parse error: syntax error, unexpected T_STRING, expecting ‘,’ or ‘;’ in
運算符的php
php 是一種伺服器端的,嵌入html的腳本語言。php區別其他像客戶端java的地方是它的代碼在伺服器端執行.php可以做任何其他cgi程序所能做的事,例如收集表格數據,生成動態頁面內容,或者收發cookies.可能最強大,最有意義的特性是php支持大範圍的資料庫.書寫一個支持資料庫的web 頁面是難以置信的簡單.
PHP 中的運算符分為:四則運算符、邏輯運算符、三目運算符和位運算符。
運算符優先順序
運算符優先順序指定了兩個表達式綁定得有多「緊密」。例如,表達式 1 + 5 * 3 的結果是 16 而不是 18 是因為乘號(「*」)的優先順序比加號(「+」)高。必要時可以用括弧來強制改變優先順序。例如:(1 + 5) * 3 的值為 18。如果運算符優先順序相同,則使用從左到右的左聯順序。
下表從高到低列出了運算符的優先順序。同一行中的運算符具有相同優先順序,此時它們的結合方向決定求值順序。
表格 15-1. 運算符優先順序 結合方向 運算符 附加信息 非結合 new new 左 [ array() 非結合 ++ — 遞增/遞減運算符 非結合 ! ~ – (int) (float) (string) (array) (object) @ 類型 左 * / % 算數運算符 左 + – . 算數運算符和字元串運算符 左 位運算符 非結合 = = 比較運算符 非結合 == != === !== 比較運算符 左 位運算符和引用 左 ^ 位運算符 左 | 位運算符 左 邏輯運算符 左 || 邏輯運算符 左 ? : 三元運算符 右 = += -= *= /= .= %= = |= ^= = = 賦值運算符 左 and 邏輯運算符 左 xor 邏輯運算符 左 or 邏輯運算符 左 , 多處用到 左聯表示表達式從左向右求值,右聯相反。
例子 15-1. 結合方向
?php
$a = 3 * 3 % 5; // (3 * 3) % 5 = 4$a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2$a = 1;$b = 2;$a = $b += 3; // $a = ($b += 3) – $a = 5, $b = 5
? 使用括弧可以增強代碼的可讀性。
注:儘管 ! 比 = 的優先順序高,php 仍舊允許類似如下的表達式:if (!$a = foo()),在此例中 foo() 的輸出被賦給了 $a。
運算符」in」和」=」在嵌套查詢中的使用區別
in 後面子查詢的返回值可以是多個值,當欄位滿足其值是子查詢返回值的子集時被查詢到
如返回值是1,2,5,8,10,只要欄位等於其中任何一個都滿足條件
= 後面子查詢的返回值只能有一個,當欄位等於返回值時被查詢到
php中運算符有哪些,它們之間的優先順序又是怎樣?
剛測試了一下
優先順序
||比and高
and比or高
寫代碼時
有疑義就加括弧
資料庫in的用法
資料庫in的用法的用法你知道嗎?下面我就跟你們詳細介紹下資料庫in的用法的用法,希望對你們有用。
資料庫in的用法的用法如下:
MySQL IN 語法
IN 運算符用於 WHERE 表達式中,以列表項的形式支持多個選擇,語法如下:
WHERE column IN (value1,value2,…)
WHERE column NOT IN (value1,value2,…)
當 IN 前面加上 NOT 運算符時,表示與 IN 相反的意思,即不在這些列表項內選擇。
IN 使用實例
選取 uid 為 2、3、5 的用戶數據:
SELECT * FROM user WHERE uid IN (2,3,5)
返回查詢結果如下:
uid
username
password
regdate
2 小明 a193686a53e4de85ee3f2ff0576adf01 xiao@163.com 1278063917
3 Jack 0193686a35e4de85ee3f2ff0567adf490 jack@gmail.com 1278061380
5 5idev a193686a53e4de85ee3f2ff0576adf01 5idev@5idev.com 1291107029
IN 子查詢
更多情況下,IN 列表項的值是不明確的,而可能是通過一個子查詢得到的:
SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=0)
在這個 SQL 例子里,我們實現了查出所有狀態為 0 的用戶(可能是被禁止)的所有文章。首先通過一個查詢得到所有所有 status=0 的用戶:
SELECT uid FROM user WHERE status=0
然後將查詢結果作為 IN 的列表項以實現最終的查詢結果,注意在子查詢中返回的結果必須是一個欄位列表項。
IN 運算符補充說明
IN 列表項不僅支持數字,也支持字元甚至時間日期類型等,並且可以將這些不同類型的數據項混合排列而無須跟 column 的類型保持一致:
SELECT * FROM user WHERE uid IN(1,2,’3′,’c’)
一個 IN 只能對一個欄位進行範圍比對,如果要指定更多欄位,可以使用 AND 或 OR 邏輯運算符:
SELECT * FROM user WHERE uid IN(1,2) OR username IN(‘admin’,’5idev’)
使用 AND 或 OR 邏輯運算符後,IN 還可以和其他如 LIKE、=、= 等運算符一起使用。
關於 IN 運算符的效率問題
如果 IN 的列表項是確定的,那麼可以用多個 OR 來代替:
SELECT * FROM user WHERE uid IN (2,3,5)
// 等效為:
SELECT * FROM user WHERE (uid=2 OR aid=3 OR aid=5)
一般認為,如果是對索引欄位進行操作,使用 OR 效率高於 IN,但對於列表項不確定的時候(如需要子查詢得到結果),就必須使用 IN 運算符。另外,對於子查詢表數據小於主查詢的時候,也是適用 IN 運算符的。
第十二講 PHP 邏輯運算符
邏輯運算符用來組合邏輯運算的結果,是程序設計中一組非常重要的運算符。
PHP中的邏輯運算符如下表所示:
左右兩個條件同時為 TRUE 時,則結果為 TRUE;兩個條件中有任意一個條件為 FALSE 時,則結果為 FALSE。當左邊的條件為 FALSE 時,將直接跳過右邊的條件直接返回 FALSE。
運行結果:
如果兩個條件有一個為 TRUE,則結果為 TRUE;如果兩個條件都是為 FALSE,則結果為 FALSE。當左邊條件為 TRUE,將跳過右邊條件的判斷,直接返回 TRUE。
調整上面的示例:
運行結果:
將一個布爾值進行取反操作。例如:!true = false、!false = true、!10 = false。
調整上面的示例:
php報錯問題Parse error: syntax error, unexpected T_STRING, expecting ‘,’ or ‘;’ in
報錯是因為echo輸出時對雙引號沒有使用轉義字元。正確的應該是:
第一種方法
echo “input name=\”Sel\” type=\”radio\” value=\””.$Arr[‘ID’].”\” /”.$Arr[‘SName’].”br /”;
即是把要輸出的雙引號使用\”進行轉義。
第二種方法
就是echo輸出用單引號,裡面的輸出字元串全部用雙引號,如下:
echo ‘input name=”Sel” type=”radio” value=”‘.$Arr[‘ID’].'” /’.$Arr[‘SName’].’br /’;
擴展資料
相對 echo 中拼接字元串而言,傳遞多個參數比較好,考慮到 PHP 中連接運算符(「.」)的優先順序。 傳入多個參數的方式,不需要圓括弧保證優先順序:
例1:echo “Sum: “, 1 + 2;
例2:echo “Hello “, isset($name) ? $name : “John Doe”, “!”;
參考資料來源:百度百科-轉義字元
參考資料來源:PHP官方手冊-echo
原創文章,作者:LFQX,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/149303.html