• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:多次元配列でキーを基準に並び変えする)

多次元配列でキーを基準に並び変えする方法は?

このQ&Aのポイント
  • 多次元配列でキーを基準に並び変えを行いたいですが、解決策が見つかりません。
  • 配列の四次元目の数字を昇順または降順で並び変え、結果を表示したいです。
  • 詳しい方からのアドバイスをお待ちしています。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

すでに指摘があるとおり多次元配列ですることではないですね こんな風に処理してみるとよいかもしれません。 <?PHP $food[]=array("item0"=>"y","item1"=>"bi" ,"item2"=>"1","item3"=>"2012010101","item4"=>"k1"); $food[]=array("item0"=>"y","item1"=>"ko" ,"item2"=>"2","item3"=>"2012010104","item4"=>"k2"); $food[]=array("item0"=>"n","item1"=>"dou","item2"=>"3","item3"=>"2012010105","item4"=>"k3"); $food[]=array("item0"=>"y","item1"=>"dou","item2"=>"4","item3"=>"2012010106","item4"=>"k4"); $food[]=array("item0"=>"n","item1"=>"bi" ,"item2"=>"5","item3"=>"2012010107","item4"=>"k5"); function mysort($a,$b){ if($a["item3"]==$b["item3"]) return 0; return $a["item3"] > $b["item3"] ? 1 :-1; } usort($food,"mysort"); print "<pre>"; print_r($food); print "</pre>";

cinnron
質問者

お礼

ご回答ありがとうございます。とりあえず、言われた方法で試してみます。

その他の回答 (1)

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

求められてる結果ですと、多次元配列でデータを持っていることにあまり意味がないです。 多次元配列から、キーと値のペアの配列を作成して、それを単にソートするだけというのが、求めてる結果に一番近いかと。 データ構造から考え直してみては。大変ですが。

関連するQ&A

専門家に質問してみよう