2012-08-08 61 views
0

我有一个数组,如:如何具有最小值的索引关联数组PHP

Array([0]=>array('field1'=>aNumber,'field2'=>'something'), 
[1]=>array('field1'=>aNumber,'field2'=>'something'), 
[2]=>array('field1'=>aNumber,'field2'=>'something'), 
[3]=>array('field1'=>aNumber,'field2'=>'something')); 

我得阵列具有最小的字段aNumber的索引..

例如:

Array([0]=>array('field1'=>10,'field2'=>'something'), 
[1]=>array('field1'=>3,'field2'=>'something'), 
[2]=>array('field1'=>100,'field2'=>'something'), 
[3]=>array('field1'=>9,'field2'=>'something')); 

我想要的索引是1

我知道有可能使用循环和一些如果存储迭代索引..但我想知道是否有一些PHP功能,缩短算法
我该怎么办?谢谢!!!

+0

array_walk ,array_filter ...但是,不能避免循环,因为php数组搜索相关函数不能处理任意多维数组。如果你想要搜索任意结构的数组,你必须自己提供搜索功能。 – 2012-08-08 05:45:46

+0

请注意,编写自己的函数更有可能比使用自己的循环的函数组合更有效。 – 2012-08-08 05:57:56

+0

我怀疑做一些简单的'foreach'会使它更快或使代码更具可读性。 – 2012-08-08 06:14:31

回答

1

据我所知没有像这样的内置函数。 但是你可以使用其它功能回调.. array_walkarray_filter

(以及一个内置的功能可能会做同样的,你将有一个循环做,通过你的阵列的项目重复)