关于这一点有很多主题,但它们都不是我需要的。我有一个带有fname,lname等的数组。我需要使用以下代码按lname排序:
if ($myvar)
foreach( $myvar as $key => $row) {
echo "<p>$row->fname $row->lname";
echo "$row->intro</p>";
sort($row->lname);
} else
echo "<p>No Results for your search.</p>";
你可以看到我扔了一个,我也尝试过ksort但没有发生任何事情。我在这个论坛上尝试了其他一些东西,但没有运气。订单错了吗?语法不正确吗?
我对此的了解有限,我认为这样做会更容易! :)请告知你是否可以。
答案 0 :(得分:1)
usort($myvar, function($a,$b) {return strcmp($a->lname, $b->lname);});
虽然如评论中所述,如果这是在搜索数据库或搜索引擎,那么最好让那些对你的东西进行排序。
答案 1 :(得分:0)
在您的代码中,您似乎拥有一组数组。 如果你只有一个数组,则不需要在foreach中使用sort。 排序 - 对数组进行排序,因此请直接使用它:
if ($myvar) {
uasort($myvar, function($a,$b) {return strcmp($a->lname, $b->lname);}));
}else{
echo "<p>No Results for your search.</p>";
}