この記事は公開から7年、最終更新日からも7年経過しています。内容が古くなっている可能性があります。
当サイトはAmazonアソシエイトとして、適格販売により収入を得ています。
目次
概要
毎回ググってしまうので覚えるために
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



