Php 排序数组中的位置查找算法
我有一个键和值的排序数组,如Php 排序数组中的位置查找算法,php,arrays,Php,Arrays,我有一个键和值的排序数组,如 Array ( [1] => Array ( [value] => 65 ...... ) [0] => Array ( [value] => 65 ) [5] => Array
Array
(
[1] => Array
(
[value] => 65
......
)
[0] => Array
(
[value] => 65
)
[5] => Array
(
[value] => 35
)
[4] => Array
(
[value] => 3
)
[2] => Array
(
[value] => 0
)
[3] => Array
(
[value] => 0
)
)
我搜索在这个数组上运行的简单算法并返回位置数组
比如:
首先我们有键1+0,值是65
等等
我尝试循环使用foreach
并添加大量if
条件,
我搜索一些简单的东西
谢谢我想你是说最后一行的
位置['4']
。如果是这样的话,应该这样做(否则您必须解释为什么会有2
;):
places['1'] = keys => array(1,0), value => 65
places['2'] = keys => array(5), value => 35
places['3'] = keys => array(4), value => 3
places['4'] = keys => array(2,3), value => 0
$placeIndex = 0;
$lastValue = null;
$places = array();
foreach($array as $key => $value) {
if($value['value'] === $lastValue) {
$places[$placeIndex]['keys'][] = $key;
}
else {
$placeIndex++;
$lastValue = $value['value'];
$places[$placeIndex] = array(
'keys' => array($key),
'value' => $lastValue
);
}
}