排序数字系列

时间:2013-03-30 14:48:41

标签: php

我在字符串中有一系列数字,如4,5,3,6,7,8,2,1,我希望它们像1,2,3,4,5,6,7那样顺序,8

我尝试使用爆炸但是因为

而被卡住了

提前致谢!

4 个答案:

答案 0 :(得分:3)

你走了,

$string = '4,5,3,6,7,8,2,1';

$numbers = explode(',', trim($string));
asort($numbers);
$numbers = implode(',', $numbers);

echo $numbers; // outputs 1,2,3,4,5,6,7,8

<强>解释

  • explode()会将字符串拆分为数组,由分隔符指定 (在这种情况下)

  • implode()会做相反的事情。它需要一个数组并转换成一个 带有指定分隔符的字符串。

我必须这样做才能订购数字(数组),在中间使用asort()

答案 1 :(得分:3)

将字符串拆分为带explode()的数组,然后进行自然排序(natsort())。最后将数组合并回implode()的字符串。

$string = '4,5,3,6,7,8,2,1';
$array = explode(',',$string);
natsort($array);
echo implode(',',$array);

答案 2 :(得分:0)

需要在数组中转换字符串然后对其进行排序

 <?php
  $string = "4,5,3,6,7,8,2,1";
  $array  = explode(',', $string);
  asort($array);
 echo implode(',', $array);
?>

答案 3 :(得分:0)

Explode将字符串添加到数组中,然后将其implode重新排序为字符串:

$arr = explode(',', '4,5,3,6,7,8,2,1');
sort($arr, SORT_NUMERIC);

echo implode(',', $arr);