根据每个字符串的一部分对字符串数组进行排序

问题描述 投票:0回答:1

我如何从中订购数组:

$unordered_array = array('11196311|3','17699636|13','11196111|0','156875|2','17699679|6','11196237|7','3464760|10');

对此

$ordered_array = array('11196111', '156875', '11196311', '17699679','11196237','3464760', '17699636');

“|”后面的数字定义位置,数组需要从低到高排序,并去掉最终数组中的位置号。

php arrays sorting
1个回答
2
投票
$array = array();
foreach($unordered_array as $value) {
    $value = explode('|', $value);
    $array [$value[1]]= $value[0];    
}
ksort($array);
$ordered_array = array_values($array);

var_dump($ordered_array);
© www.soinside.com 2019 - 2024. All rights reserved.