我现在正在使用strpos
来检查字符串是否存在于数组中。问题是,当字符串包含UTF-8字符时,当我将字符串与使用true
进行比较时,它不会返回=== true
。我需要使用!== false
来返回我的预期结果。但是,如果我使用===true
或!==false
并不重要,如果字符串不包含UTF-8字符,则返回true。
所以我想问的是为什么我必须使用!== false
比较UTF-8字符而不是=== true
?此外,=true
和!=false
相比是否相同,哪个更适合在比较中返回true?
答案 0 :(得分:1)
返回针相对于针的位置 haystack字符串的开头(与offset无关)。另请注意 字符串位置从0开始,而不是1。
如果未找到针,则返回FALSE。
Strpos不应该返回true,它应该返回一个引用位置的整数。