2013-11-26 316 views
-2
<?php 

var_dump(in_array('ddds', array(2,3,0))); 

为什么这个函数返回true?我们有一个字符串,可以转换为1,但为什么要0?为什么这个函数返回true?

+0

'in_array( '用药频度',阵列(2,3,0),TRUE)'返回false,适当地,当执行严格的检查。 –

回答

1

这是因为ddds == 0为真(demo),0是您的数组的元素。为in_array()设置strict参数,以确保也考虑类型。

documentation

如果严格的第三个参数设置为TRUE则in_array()函数还会检查类型大海捞针的。

var_dump(in_array('ddds', array(2,3,0), TRUE)); 

输出:

bool(false)