-1

カスタムビルドの CMS をいじっていると、特定の店舗に関連するデータベースに複数の郵便番号が保存されているという問題があります。

オブジェクト配列内にそれらをロードしています

Array ( 
  [0] => PostalCodes Object ( 
    [ID] => 0fea73e60ef4e5809e1ec4900a1f6075
    [StoreID] => 7f0563d8e451d2342ca4b6a3b5402665
    [PostalCode] => L2E
  )
  [1] => PostalCodes Object (
    [ID] => 11e82b7f0e69dd3982352cf6b983ca9f
    [StoreID] => 7f0563d8e451d2342ca4b6a3b5402665
    [PostalCode] => L0R1S0
  )
) 

私の質問は、for each ループで出力する前に、アルファベット順と数値順に並べ替える最も効率的な方法は何でしょうか?

4

1 に答える 1

1

関数は と呼ばれ、郵便番号でusort()簡単に使用できます。strcmp()

function myCompare($a, $b) {
    return strcmp($a->PostalCode, $b->PostalCode)
}

usort($myarray, 'myCompare');

また、今後の投稿では、より読みやすい形式でデータを投稿してください。多くの人は、あなたが最初に投稿したものを読んだり、再フォーマットしたりするのに時間をかけようとはしません。

于 2013-01-07T19:34:13.667 に答える