0

これについてはたくさんのトピックがありますが、どれも私が必要としているものではありません。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を試しましたが、何も起こりません。私はこのフォーラムから他のいくつかのことを試しましたが、運がありませんでした。順序が間違っていますか?構文が間違っていますか?

これについての私の知識は限られているので、もっと簡単だと思いました!:)できればアドバイスしてください。

4

2 に答える 2

1
usort($myvar, function($a,$b) {return strcmp($a->lname, $b->lname);});

ただし、コメントで述べられているように、これがデータベースまたは検索エンジンを検索している場合は、それらに自分のものをソートさせる方がよいでしょう。

于 2013-02-01T13:08:50.883 に答える
0

あなたのコードでは、配列の配列があるようです。配列が1つしかない場合は、foreach内でsortを使用する必要はありません。並べ替え-配列を並べ替えるので、次のように直接使用します。

if ($myvar) {
   uasort($myvar, function($a,$b) {return strcmp($a->lname, $b->lname);}));
}else{
    echo "<p>No Results for your search.</p>";
}
于 2013-02-01T13:22:12.180 に答える