前提・実現したいこと
ここに質問の内容を詳しく書いてください。
初めてご質問させていただきます。
質問の内容についてPHPのforeachで重複しているテキストを削除したいです。
参考サイトを元にコードを書いてみたのですが、削除したくないテキストも削除されてしまいます。
どのように修正をしたらいいのか分からず手詰まり状態です。
是非ともご教示いただければと思います。
発生している問題・エラーメッセージ
HTML
1<h2>台東区</h2> 2<p>浅草寺</p> 3 4<h2>墨田区</h2> 5<p>江戸東京博物館</p> 6 7<h2>千代田区</h2> 8<p>東京駅</p> 9 10<h2>中央区</h2> 11<p>歌舞伎座</p>
該当のソースコード
PHP
1 $variable = [ 2 ['id' => 1, 'location' => '台東区', 'name' => '浅草寺'], 3 ['id' => 2, 'location' => '台東区', 'name' => '今戸神社'], 4 ['id' => 3, 'location' => '台東区', 'name' => '東京国立博物館'], 5 ['id' => 4, 'location' => '墨田区', 'name' => '江戸東京博物館'], 6 ['id' => 5, 'location' => '墨田区', 'name' => '東京スカイツリー'], 7 ['id' => 6, 'location' => '千代田区', 'name' => '東京駅'], 8 ['id' => 7, 'location' => '千代田区', 'name' => '皇居'], 9 ['id' => 8, 'location' => '中央区', 'name' => '歌舞伎座'], 10]; 11 12$tmp = []; 13$uniques = []; 14foreach ($variable as $value){ 15 if (!in_array($value['location'], $tmp)) { 16 $tmp[] = $value['location']; 17 $uniques[] = $value; 18 } 19} 20foreach($uniques as $unique){ 21 echo '<h2>'.$unique['location'].'</h2>'; 22 echo '<p>'.$unique['name'].'</p>'; 23}
試したこと
こちらのサイトを参考にしましたが、例えば「台東区」の「浅草寺」は表示されますが他の「今戸神社」「東京国立博物館」が表示されなくなってしまいます。
下記が実現したい事です。
HTML
1<h2>台東区</h2> 2<p>浅草寺</p> 3<p>今戸神社</p> 4<p>東京国立博物館</p> 5 6<h2>墨田区</h2> 7<p>江戸東京博物館</p> 8<p>東京スカイツリー</p> 9 10<h2>千代田区</h2> 11<p>東京駅</p> 12<p>皇居</p> 13 14<h2>中央区</h2> 15<p>歌舞伎座</p>
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/08/06 03:26