如何正确使用 in_array 函数?

Posted

技术标签:

【中文标题】如何正确使用 in_array 函数?【英文标题】:How to use in_array function corretly? 【发布时间】:2014-04-22 05:19:30 【问题描述】:

大家好,我不能低估为什么 in_array 函数不检查任何数组元素是否为空。我希望它检查任何值是否为空,它应该返回 true。我已将所有值设置为空'',但它仍然返回 no 而不是 yes。任何帮助表示赞赏。谢谢

print_r($vals);

foreach($vals as $value) 
    if(in_array("",$value, true)) echo 'yes'; else echo 'no';

返回:-

数组 ( [0] => '' [1] => '' [2] => '' [3] => '' ) nononono

【问题讨论】:

你能举例说明 $vals 数组应该是什么样子吗? $value 只是代码中的一个空字符串。 【参考方案1】:

你不需要foreach,就这样使用

if(in_array(" ",$vals, true)) 
    echo 'yes'; 
else 
    echo 'no';

【讨论】:

【参考方案2】:

如果你只想检查空字符串为什么不使用:

foreach($vals as $value) 
    if($value == "") echo 'yes'; else echo 'no';

【讨论】:

【参考方案3】:

in_array 用于检查数组中是否存在特定值 请参考http://in2.php.net/in_array 您的问题解决方案可以通过 其他答案中提到的 foreach 和 if 循环

【讨论】:

以上是关于如何正确使用 in_array 函数?的主要内容,如果未能解决你的问题,请参考以下文章

PHP太怪了,in_array() ,strpos,

php in_array函数的使用

php函数in_array奇怪现象

In_array()函数弱比较

转 PHP in_array() 函数

代码审计学习01-in_array() 函数缺陷