この記事は公開から6年、最終更新日からも6年経過しています。内容が古くなっている可能性があります。
目次
概要
毎回ググってしまうので覚えるために
PHPで連想配列のループ処理を整理してみる。
どうせなので多次元配列(今回は2次元配列)でコードを記述してみた。
※おまけ:WordPressで実装していますが、ショートコードの話以外はPHPの一般的な内容です。
ソースコード(配列の準備)
※最後の数値は適当。
function foreachlooptest_setting() { $test_array=array( '東京' => array( '世田谷区'=>'100', '渋谷区'=>'255', '町田市'=>'1731', ), '北海道' => array( '札幌市'=>'27', '函館市'=>'-34', ), '福岡県' => array( '福岡市'=>'3312', '北九州市'=>'6398', '糸島市'=>'33.5', ), ); return $test_array; }
ソースコード(配列をforeachでループさせて表示する)
function foreachlooptest_output($arrays) { $output_html=""; foreach($arrays as $array=>$values) { foreach($values as $key=>$value) { $output_html= $output_html . "[" . $array . "][" . $key . "]=" . $value . "<br>"; } } return $output_html; }
ソースコード(本投稿内に上記の結果を表示させるためのショートコードをWordPress内に定義したもの)
※おまけです。
function foreachlooptest_demo() { $test_array=foreachlooptest_setting(); return foreachlooptest_output($test_array); } add_shortcode( 'loop_demo' , 'foreachlooptest_demo' );
結果
ここにショートコード「[loop_demo]」と記述し実際に実行させて表示しています。
[東京][世田谷区]=100
[東京][渋谷区]=255
[東京][町田市]=1731
[北海道][札幌市]=27
[北海道][函館市]=-34
[福岡県][福岡市]=3312
[福岡県][北九州市]=6398
[福岡県][糸島市]=33.5