-4

可能重复:在 PHP 中对
关联数组进行
排序 在 PHP 中对多维数组进行排序?

我有一个允许将订单分配给送货司机的系统。以下来源列出了当前可用的分销商列表,以及他们与客户的距离:

$franchise_a_status = array();
  $franchise_a_status[] = array('id' => '', 'text' => 'Please Select');
  $franchise_query = mysql_query("select franchise_id, franchise_surname, franchise_firstname, franchise_postcode, franchise_availability  from " . TABLE_FRANCHISE . " where franchise_availability=1");
    $origin = $cInfo->entry_postcode;
  while ($franchise = mysql_fetch_array($franchise_query)) {
    $destination = $franchise['franchise_postcode'];
    $json = file_get_contents("http://maps.googleapis.com/maps/api/distancematrix/json?origins=$origin&destinations=$destination&mode=driving&sensor=false&units=imperial");
    $result = json_decode($json, true);
    $distance = $result['rows'][0]['elements'][0]['distance']['text'];


    $franchise_a_status[] = array('id' => $franchise['franchise_id'],
                                'text' => $franchise['franchise_surname']. ' ' .$franchise['franchise_firstname'].' '.'('.$distance.')');
                 }

该列表使用下拉菜单显示:

    array('text' => tep_draw_pull_down_menu('franchise_id',$franchise_a_status));   

我需要按照最短距离到最高距离的顺序对数组进行排序。

4

1 回答 1

0
  1. 将距离添加到$franchise_a_status
  2. 根据距离排序(usort)。
  3. 创建一个没有距离值的新数组(array_mapforeach)。
于 2012-07-06T10:11:40.863 回答