不知道有没有人可以帮忙。在PHP中对二维数组排序
我有一个二维数组,其中有一些工作项目在例如;
$portfolioItems [$i] = array('job' => $extra_job->field_value,
'mediaType' => $media_type->field_value, 'default' => $default->field_value
);
我简化了数组以显示我想要排序的元素。
基本上这个名单最终填充我使用的是缩略图/数据等
这一切工作正常,但我想要做的是有一个特定的顺序如下jfredcarousel;
如果媒体类型中包含文本'hero'(将只是一个实例),则将其右移到前面。
然后,下一个项目需要是一些已被确定为“默认”项目集的作业项目。所以我可能会在某个地方设置一个标志,将工作号码标识为“默认”,然后像“英雄”进程一样进行检查。
因此,这将是'英雄'项目,然后将作业编号项目定义为'默认',其余的将在此之后顺序下降(我已经按作业编号对项目进行排序)。
什么是最好的方式去排序一个现存的二维数组?我看了一下shift/unshift等,但无法达到我想要的 - 我现在只是在复制数组,然后逐个检查这些条件,以便新数组看起来正确。然后摧毁旧的阵列。
任何想法赞赏
感谢
干杯 - 只是一个问题,虽然与uasort维护索引号,当我通过这个数组的foreach后来坚持到XML文件 - 那会不会回到索引顺序? – frazzle 2011-01-26 09:55:54
不,uasort的目的是对数组进行排序(改变顺序)。不要将索引与排序混淆,因为它们并不总是相同的。不过,如果你不需要维护索引关联,你可以使用`usort`。 – 2011-01-26 09:57:42