我想按字母顺序排序字符串($ title)
原始代码:
foreach ($feed->get_items() as $item) {
$title = $item->get_title();
echo $title.'</br>';
}
返回:
拍卖95,15。2008年3月
电子拍卖153
AntikeMünzen
威廉·斯坦科姆收集的黑海地区的硬币
MünzenundMedaillen A.G.,Liste 366
系列R. Jameson
Monetele citilor din Dobrogoea
无题
选择希腊硬币
我想要对字符串进行排序,我必须将sting转换为数组,对数组进行排序,然后将其转换回字符串。
例如:
foreach ($feed->get_items() as $item) {
//added '#' so I could it explode it based on something
$title = $item->get_title().'#';
$titleArray = explode("#",$title);
sort($titleArray);
echo implode('#', $titleArray).'</br>';
}
返回:
(完全相同)
我一直在尝试将其转换为数组的许多不同版本,并尝试对数组进行排序无效。我是(显然)初学者,需要帮助。任何提示都将不胜感激。
答案 0 :(得分:2)
在 迭代之前对数组 进行排序
$array = $feed->get_items();
usort(
$array,
function ($a, $b) {
return strcmp($a->get_title(), $b->get_title());
}
);
foreach ($array as $item) {
...
}
答案 1 :(得分:2)
使用usort
$array = $feed->get_items();
usort($array, function($a, $b) {
if ($a->get_title() == $b->get_title()) {
return 0;
}
return ($a->get_title() < $b->get_title()) ? -1 : 1;
});
$array
包含已排序的项目。