4
A
回答
3
由於PHP正在做type conversion,它將字符串轉換爲整數,並且它的工作方法是將所有數字都計數到非數字值。在你的情況下,這是子字符串('1')(因爲,
是第一個非數字字符)。如果字符串開始什麼,但一個數字,你會得到0
-1
0
我猜你想知道一個變量是否在範圍內的值。
您可以使用in_array
:
if (in_array(1, array(1, 3, 5, 6)))
echo "in";
0
if(in_array(1, array(1,3)) {
echo "in";
}
4
您比較一個字符串和一個整數。該字符串必須首先轉換爲整數,PHP將數字字符串轉換爲整數。由於該字符串的開頭是'1',因此它將數字1與數字1進行比較,它們是相等的。
你打算使用哪些功能?
+0
我還想補充一點,如果他已經使用了「===」(身份比較)他也會比較類型。 – Secko 2010-12-16 17:29:56
1
1
如果你想檢查1等於1或3,那麼我肯定會做這種方式:
if (1 == 1 || 1 == 3)
5
的==
符不鍵入兩個值轉換,試圖讓它們是同一種類型。在你的例子中,它會將第二個值從一個字符串轉換爲一個整數,這將等於1
。這顯然等於你匹配的值。
如果你的第一個值是一個字符串 - 例如'1'
用引號括起來,而不是一個整數,那麼匹配會失敗,因爲雙方都是字符串,所以它會做一個字符串比較,它們是不同的字符串。
如果您需要一個不會進行類型轉換的精確匹配運算符,PHP還提供了一個tripple-equal運算符===
,這可能是您正在尋找的內容。
希望有所幫助。
相關問題
- 1. PHP數組比較問題
- 2. Php日期比較問題
- 3. PHP比較疑問
- 4. PHP +問題與file_get_contents和比較價值
- 5. Symfony 2 PHP比較日期問題
- 6. 在有問題的PHP比較日期
- 7. PHP中的變量比較問題
- 8. PHP:與比較變量的問題
- 9. PHP:陣列比較問題 - 網址
- 10. SimpleDateFormat比較問題
- 11. 雙比較問題
- 12. Oracle比較問題
- 13. 問題比較ISODates
- 14. JavaScript比較問題
- 15. DateTime比較問題
- 16. 比較器/比較/比較器鏈接問題
- 17. 的NSString比較的問題
- 18. jquery對象比較問題
- 19. 數字比較CMD問題
- 20. yii中的比較問題
- 21. Java的比較問題
- 22. DropDownlist比較驗證問題
- 23. android string比較問題?
- 24. 問題與浮點比較
- 25. SQLite:「IN」比較問題
- 26. 詞法比較的問題
- 27. linqjs intersect比較問題
- 28. 分數比較問題
- 29. Autohotkey_L數值比較問題
- 30. 比較運算符問題
你想完成什麼? – raRaRa 2010-12-16 17:17:18
http://php.net/manual/en/language。operators.comparison.php – 2010-12-16 17:18:10