doudongfu8006 2018-03-05 10:57
浏览 118
已采纳

用逗号分隔的字符串变量中的数字排序

I have the following string

$ickkcids = "120,176,182,120,182,207,176,120,182,118,120,176";

I want to display it in a ascending ordered, like below.

118(1) //118 is the lowest integer so it comes first.
120(4)
176(3)
182(3)
207(1) //207 is the highest integer so it comes last.

This is what im doing

$array = explode(',', $ickkcids); 
        sort($array); 
        foreach($array as $arraye)
        {
            $html .= $arraye.'<br />';
        }

But this returns all numbers in ascending order and i don't know how to count in this.

Any idea how to achieve this?

  • 写回答

1条回答 默认 最新

  • 普通网友 2018-03-05 11:08
    关注

    I support all above comments.First try your self, then ask a question.

    Any way @OITE OMAN, you can try this code for your question:

    $str = "120,176,182,120,182,207,176,120,182,118,120,176";
    $array = explode(",",$str);
    asort($array, SORT_NUMERIC);
    $latest_array = array_count_values($array);
    print_r($latest_array);
    foreach($latest_array as $key=>$value){
    echo $key."(".$value.")";
    echo "</br>"; 
    }
    

    Output:

    118(1)
    120(4)
    176(3)
    182(3)
    207(1)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 swiftui @query 报错
  • ¥50 怎么解决刷卡或扫码后,点击软件输入框,win10屏幕键盘不会自动弹出的问题
  • ¥15 如何使用arcgispro的训练深度模型,发现water和nowater精度为0?(相关搜索:深度学习)
  • ¥20 matlab作业不太懂呀有问题能给个代码吗
  • ¥15 自制电路图为何无法驱动ESP01S?
  • ¥15 前端加access数据库
  • ¥15 ARCGIS 多值提取到点 ERROR 999999
  • ¥15 mysql异常断电, [MY-011971] [InnoDB]
  • ¥15 uni.onBluetoothDeviceFound熄屏不运行
  • ¥15 求PHDA糖尿病并发症数据集,有偿