我目前通過O'Reilly的「PHP編程」的工作和所遇到的這臺名爲「比較類型的比較操作執行」:PHP比較運營商和數據類型
First Operand | Second Operand | Comparison ----------------------------------------------------------------------- Number | Number | Numeric String that is numeric | String that is numeric | Numeric String that is numeric | Number | Numeric String that is not numeric | Number | Lexicographic String that is numeric | String that is not numeric | Lexicographic String that is not numeric | String that is not numeric | Lexicographic
我的規則當且僅當至少一個操作數是一個數字或兩個操作數都是數字串時,執行哪種比較類型的拇指纔是「數字」。這似乎得到php.net page on Comparison Operators的支持,其中指出:「如果您將整數與字符串進行比較,則該字符串將轉換爲數字,如果比較兩個數字字符串,則將它們作爲整數進行比較。」
但是,這意味着表格第四行中的比較應該是「數字」。表中是否包含錯誤,或者我的規則錯誤?
你的規則是錯誤的。嘗試比較''字符串「== 0'和'intval(」string「)== 0' – 2009-11-16 05:30:11
@Ast Derek:兩個比較的結果似乎都是真的。 – user200783 2009-11-16 06:08:26