请教 php 如何把如下数字排序
duo2013.user063 : 45 kH/s
duo2013.user051 : 52 kH/s
duo2013.user064 : 56 kH/s
duo2013.user022 : 72 kH/s
duo2013.user036 : 73 kH/s
duo2013.user076 : 84 kH/s
........换成
duo2013.user022 : 72 kH/s
duo2013.user036 : 73 kH/s
duo2013.user051 : 52 kH/s
duo2013.user063 : 45 kH/s
duo2013.user064 : 56 kH/s
duo2013.user076 : 84 kH/s
........原始数据是安装 kH/s 的值排序,现要求按照userxxx 排序. 谢谢大概有200行左右的数据 .. 所以必须正则PHP正则

解决方案 »

  1.   

    如果前面都是duo2013.user的话
    按行读入数组,直接排序然后重新输出就行了如果前面不仅duo2013的话
    再按“.”拆分二维数组,用multisort按第二维排序
    然后组合输出
      

  2.   

    $s =<<< TXT
    duo2013.user063 : 45 kH/s
    duo2013.user051 : 52 kH/s
    duo2013.user064 : 56 kH/s
    duo2013.user022 : 72 kH/s
    duo2013.user036 : 73 kH/s
    duo2013.user076 : 84 kH/s
    TXT;
    $ar = explode("\n", $s);
    sort($ar);
    echo join("\n", $ar);duo2013.user022 : 72 kH/s
    duo2013.user036 : 73 kH/s
    duo2013.user051 : 52 kH/s
    duo2013.user063 : 45 kH/s
    duo2013.user064 : 56 kH/s
    duo2013.user076 : 84 kH/s