dounai1986 2014-12-19 10:07
浏览 40
已采纳

在循环之前创建和排序数组[重复]

This question already has an answer here:

I need to create an array from XML response and then order by one of the existing XML field.

I have parsed the XML fine and ended up with 3 values that I need in my foreach loop.

$optionsArray = array();

foreach ($options as $key => $option) {
  $price = $option->Price;
  $shortDesc = $option->ShortDescription;
  $longDesc = $option->LongDescription;

  $optionsArray[] = array('shortdesc' => $shortDesc, 'longdesc' => $longDesc, 'price' => $price);
}

This works fine, but now I wish to order the array using the 'price' value (descending) and then I can show the items correctly.

I have looked into usort and arsort and all the others but cannot make sense. Any examples using my code for help?

Thanks.

</div>
  • 写回答

1条回答 默认 最新

  • douren7179 2014-12-19 10:11
    关注

    Should do the trick

    $sortArr = array();
    $optionsArray = array();
    foreach ($options as $key => $option) {
        $price = $option->Price;
        $shortDesc = $option->ShortDescription;
        $longDesc = $option->LongDescription;
    
        $optionsArray[] = array('shortdesc' => $shortDesc, 'longdesc' => $longDesc, 'price' => $price);
        $sortArr[] = $price;
    }
    
    array_multisort($sortArr, SORT_ASC, $optionsArray);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里