好的,愚蠢的问题在这里...只是试图在数组中进行搜索以确保所有值都是数字,如果没有,我需要返回false。什么是最快的方法。这个数组可能很大。顺便说一句,它不是一个多维数组,并且其中没有任何子数组。它只是一个单级数组......例如:
array(1, 5, 6, 2, 44, 92, 50, string);
这应该返回false,因为string是数组中的值之一而不是数字。我的意思是,有没有比在数组上使用foreach
并在每个值上使用intval
更快的方法?
谢谢你们:)
答案 0 :(得分:3)
您可以使用is_numeric功能 -
$count = count($your_array);
for($index=0; $index<$count; $index++)
{
if( !is_numeric($your_array[index]) )
return false;
}
答案 1 :(得分:3)
if(in_array(false, array_map("is_numeric", array(1, 2, 3, 4, 5, "string"))))
return false;
我还没有研究过表现,对不起。但这些都是内置功能,据称比自定义的任何东西都要快......
答案 2 :(得分:1)
foreach($array as $value)
{
if(!is_numeric($value))
{
return false;
}
}