php页面中
$title="中国人|中国地|中国话"
$nums="2|4|3";这二个变量的值是对应的,( | 分开的都是三个值),
现想通过 $nums中的值从大到小,也就是 4|3|2 来输出,同时,$title也要想对应的输出 中国地|中国话|中国人
怎么实现呀,thanks
$title="中国人|中国地|中国话"
$nums="2|4|3";这二个变量的值是对应的,( | 分开的都是三个值),
现想通过 $nums中的值从大到小,也就是 4|3|2 来输出,同时,$title也要想对应的输出 中国地|中国话|中国人
怎么实现呀,thanks
http://topic.csdn.net/u/20100513/15/cf7eb15c-3a72-4813-8086-d04d95722d99.html
$title = "中国人|中国地|中国话";
$nums = "2|4|3";$t = explode('|',$title);array_multisort(explode('|',$nums ),SORT_DESC,$t);echo implode('|',$t);
循环执行排序,一个调整,另一个也就是$title用于$nums排序相同的方法进行排序,到最后将数组implode()成一个字符串就好了
$title = "中国人|中国地|中国话";
$nums = "2|4|3";$t = explode('|',$title);
$n = explode('|',$nums);
array_multisort($n, SORT_DESC, SORT_NUMERIC, $t);echo implode('|',$t);
echo implode('|',$n);
$title = "中国人|中国地|中国话";
$nums = "2|4|3";$arr_title = explode('|', $title);
$arr_nums = explode('|', $nums);$arr = array_combine($arr_nums, $arr_title);
ksort($arr, true);
$arr_title = array_values($arr);
$arr_nums = array_keys($arr);$title = implode('|', $arr_title);
$nums = implode('|', $arr_nums);
echo $title;
echo '<br>';
echo $nums;
$arr['title']="中国人|中国地|中国话";
$arr['nums']="2|4|3";
$nums = explode('|',$arr['nums']);
$title = explode('|',$arr['title']);
$a = array();
for($i=0;$i<count($nums);$i++)
{
$a[$nums[$i]] = $title[$i];
}
echo $rs;
//ksort($a);
krsort($a);
foreach($a as $b)
{
echo $b;
}
可以,