タイトルのとおりなのですが、
多次元配列内に含まれるキー"ID"の値ごとにタブを作成したいと思っています。
しかしコード上での書き方がわからず、お手上げになってしまい、質問させていただきます。
PHP
1<?php 2$ID_list = array( 3 "aiueo" , 4 "sasisuseso" , 5 "kakikukeko" 6); 7 8$DATA_list = 9array( 10 array( 11 array( 12 "日付" => "2017/01/01", 13 "時間" =>"00:00:00", 14 "名前"=> "tarou", 15 "ID"=> "aiueo" 16 ), 17 array( 18 "日付" => "2017/01/02", 19 "時間" =>"00:00:10", 20 "名前"=> "tarou", 21 "ID"=> "aiueo" 22 ) 23 ), 24 array( 25 array( 26 "日付" => "2017/01/03", 27 "時間" =>"00:00:00", 28 "名前"=> "yamada", 29 "ID"=> "kakikukeko" 30 ), 31 array( 32 "日付" => "2017/01/03", 33 "時間" =>"00:00:10", 34 "名前"=> "yamada", 35 "ID"=> "kakikukeko" 36 ) 37 ), 38 array( 39 array( 40 "日付" => "2017/01/04", 41 "時間" =>"00:00:00", 42 "名前"=> "poppy", 43 "ID"=> "sasisuseso" 44 ) 45 ) 46); 47?>
以下のURLでは正規表現を利用していましたが、今回はそれが利用できないため
手間取っています。
https://teratail.com/questions/113442
PHP
1if (count($ID_list) > 0 && count($DATA_list) > 0) { 2 $tab = '<p id="tabcontrol">' . PHP_EOL; 3 $tab_contents = '<div id="tabbody">' . PHP_EOL; 4 $count = 1; 5 foreach ($ID_list as $val) { 6 $tab .= '<a href="#tabpage' . $count . '">' . htmlspecialchars($val) . '</a>' . PHP_EOL; 7 $tab_contents .= '<div id="tabpage' . $count . '">' . PHP_EOL; 8 9 $check = false; 10*/恐らくここを改変すればいける気がする---------------------------------- 11 foreach ($DATA_list as $row) { 12 if (preg_grep("/{$val}/", $row)) { 13 $tab_contents .= implode("<br />", $row) . PHP_EOL; 14 } 15 } 16--------------------------------------------------------------------/* 17 $tab_contents .= '</div>' . PHP_EOL; 18 $count ++; 19 } 20 $tab .= '</p>' . PHP_EOL; 21 $tab_contents .= '</div>' . PHP_EOL; 22} 23echo $tab; 24echo $tab_contents;
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/26 08:26
2018/02/26 08:56
2018/02/26 09:00
2018/02/26 09:08
2018/02/26 09:15
2018/02/26 09:32