这个问题不是我试图在数组内找到特定的字符串。我想知道检查数组中是否存在字符串的最简单方法。例如:检查PHP数组是否包含非特定字符串
[1,2,3] // this does NOT contain a string
[1,'two',3] // this DOES contain a string
我能想到的是通过所有的数组项循环和运行IS_STRING()对他们每个人喜欢它的最好方法。
$array = [1,'two',3];
$hasString = false;
foreach($array as $item){
if (is_string($item)){
$hasString = true;
}
}
这个工程,但感觉笨重。有没有更好的方式来做到这一点,不需要像这样循环访问数组,或者这样做好吗?
那么你必须检查每个元素,直到找到一个字符串,或者不是,来判断数组中是否有字符串。所以你唯一可以改变的是,如果你找到一个字符串,你可以在你的代码中循环,这样你就可以尽快停下来。 – Rizier123
array_walk,但最后它确实是一样的。 – 2016-05-12 10:53:12
“或者这样就好了” - 如果使用了break,并且该数组有大量值,那么它就足够了 – RomanPerekhrest