プログラミング雑記

【PHP】構造体的にデータを扱う(多次元連想配列) - C言語に慣れてる人向け?

goke

個人開発から世界を変えるようなプロダクトづくりを目指しています

構造体的にデータを扱いたいことがあるがやり方をすぐ忘れるのでメモしておく。構造体的にデータを扱いたいとは

[0]{'name':'aaa', 'score':'100'},
[1]{'name':'bbb', 'score':'200'},
[2]{'name':'ccc', 'score':'300'}

上記のようなイメージでデータを扱いたい場合。
結論は下記のように実施する。

$content_arr = array();
$new_content = array('name'=>'aaa','score'=>100);
array_push($content_arr,$new_content);
$new_content = array('name'=>'bbb','score'=>300);
array_push($content_arr,$new_content);
$new_content = array('name'=>'ccc','score'=>200);
array_push($content_arr,$new_content);
/*
Array ( [0] => Array ( [name] => aaa [score] => 100 ) [1] => Array ( [name] => bbb [score] => 300 ) [2] => Array ( [name] => ccc [score] => 200 ) ) 
*/

これをscoreで並び替えるには下記のようにする。

array_multisort(array_column($content_arr, 'score'), SORT_ASC, $content_arr);
/*
Array ( [0] => Array ( [name] => aaa [score] => 100 ) [1] => Array ( [name] => ccc [score] => 200 ) [2] => Array ( [name] => bbb [score] => 300 ) )
*/
目次
  1. 最後に

最後に

gokeでは上記のようなプログラムを駆使して新しいサービスを制作しています。気になることなどがあればコメントまたはTwitterでご連絡ください。

  • この記事を書いた人

goke

個人開発から世界を変えるようなプロダクトづくりを目指しています

-プログラミング雑記