ホームページ  >  記事  >  バックエンド開発  >  in_array に関連する非常に奇妙な問題が見つかりました

in_array に関連する非常に奇妙な問題が見つかりました

WBOY
WBOYオリジナル
2016-06-13 13:33:26753ブラウズ

in_array で非常に奇妙な問題が見つかりました
以下は明らかに配列内にありませんが、in_array は true と判断されます。何が起こっているのでしょうか?

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->$arr = array('0E372033','0E372034','0E372035','0E372036','0E372037','0E372038','0E372039');

if(in_array('0E372031',$arr)){
    echo "true";
}
else{
    echo "false";
}


in_array('',$arr,true) が false と判断される可能性があることは知っていますが、3 番目のパラメーターが false と判断されない理由を知りたいだけです。追加されました。それは本当です

------解決策------------------
PHP はこれを科学的表記法の数値として扱います

in_array('0E3',$arr) の場合も true
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。