2
A
回答
7
這是因爲這裏是一個整數,並且當它是相對於字符串1,2
,這個字符串將被強制轉換爲整數,它返回。
如何鑄造一個字符串1,2
返回1?
echo int('1,2'); // prints 1
所以當它是相對於你的,這將是你的var_dump
從PHP文件..(基本對比測試)顯然返回true
如果您將數字與字符串進行比較或比較涉及數字字符串,然後將每個字符串轉換爲數字,並以數字方式執行比較。
4
它解釋爲:
var_dump(1 === (int) '1,2');
"1,2"
鑄造到int
將返回1
,因爲任何東西后最後的解析數位(在這種情況下,2
)被板缺掉。記住,逗號(
,
)不是一個小數點分離器,點(.
)爲:var_dump((float) '1,3', (float) '1.3');
結果:
(float) 1 (float) 1.3
鑄件可以是通常很不直觀,這就是爲什麼你應該幾乎總是使用===
operato r,它不會創建表演。
4
如果使用==
,PHP將輸入右邊的值轉換爲左側值。 在這種情況下,'1,2'
將被類型轉換爲1
並返回true。
即使var_dump(1== "1dfuiekjdfdsfdsfdsfdsfsdfasfsadf");
也會返回true。
相關問題
- 1. 爲什麼「[[1,2],[3,4]]。indexOf([1,2])」返回-1?
- 2. 爲什麼Perl認爲-1是真的?
- 3. 爲什麼[1] .append(2)評估爲None而不是[1,2]?
- 4. 爲什麼(18446744073709551615 == -1)是真的?
- 5. 在Javascript中,爲什麼[1,2] == [1,2]或({a:1})==({a:1})爲false?
- 6. 爲什麼是真等於-1
- 7. 爲什麼輸出1?是因爲它是真的嗎?
- 8. 爲什麼MS訪問布爾值爲真-1而不是1或真?
- 9. 爲什麼e.AcceptSocket.ReceiveAsync是真的
- 10. 爲什麼WHERE「」=「」是真的?
- 11. 爲什麼JavaScript中的[5,6,8,7] [1,2] = 8?
- 12. 爲什麼Perl認爲`1和0`是真的?
- 13. 爲什麼filter_var(真,FILTER_VALIDATE_INT)返回1
- 14. 爲什麼「01」==「1」,「000333」==「333」等是真的?
- 15. 爲什麼isscalar,isvector和ismatrix對於A = 1都是真的?
- 16. 在PHP中爲什麼是真的投1和假投空串?
- 17. 爲什麼這個條件0 ='= 1'是真的?
- 18. SuperCollider:使[[1,2],[3,4]]成爲[1,2,3,4]的命令是什麼?
- 19. 爲什麼「(奇數和1)= 1」評估爲真?
- 20. 什麼順序1,2做
- 21. 爲什麼{} == {}是假的,但{} + {} == {} + {}爲真
- 22. 爲什麼「dict(Runoob = 1,Google = 2,Taobao = 3)」會在「dict(1 = 1,2 = 2,3 = 3)」的時候編譯而不是在python中?
- 23. 爲什麼`awk 1 RS =,<<<「1,2」`寫了一個額外的新行?
- 24. s = StructType(1,2)是s = new StructType(1,2),因爲s = {a:1,b:2}是\?\?\?\?
- 25. perl:爲什麼\(1,2)是標量?如何解除引用?
- 26. 爲什麼winapi的BOOL使用1爲真,2爲假?
- 27. MongoDB爲什麼id是-1?
- 28. 爲什麼〜0是-1?
- 29. 爲什麼hasLayout總是-1?
- 30. 爲什麼isNaN(「1」)是false?
(它與var_dump無關,只是你如何觀察結果。) – user2864740