1

次の配列があるとします。

$enabled = array(
  'page' => 'page',
  'article' => 0,
);

「記事」はキーであり、値ではないことに注意してください。一致する値を検索するためin_array()、次の行は FALSE を返すと予想されます。

in_array('article', $enabled)

それでも、TRUE を返します。なんで?私は何が欠けていますか?

4

2 に答える 2

0

厳密な型チェックのために 3 番目のパラメーターを渡します。

in_array('article', $enabled, true);

0それ以外の場合、PHP は(整数) と'article'(文字列)を比較しようとします。
'article'0 に評価されます!
→対等です!

例 @ codepad.org

于 2013-10-09T15:02:29.127 に答える