• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:不要な配列を消したい)

不要な配列を消す方法を教えてください

このQ&Aのポイント
  • 2次元配列で不要な要素を取り除く方法を教えてください。初めと5番目の要素を削除したいです。
  • preg_matchを使用して、日付の2006にマッチしない要素を削除しようとしましたが、うまくいきませんでした。
  • もしご存知の方がいらっしゃれば、教えていただけると助かります。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

私の前回の答えが回答になっていませんか? 書き直したものを全文だとこんな感じ? <?PHP $data = array ( array('<br>'), array("2006 03 22", test), array("2006 03 23", test2), array("2006 03 25", test3), array('') ); $pattern = '/2006/'; foreach($data as $key => $value) { if(!preg_match($pattern, $value[0])) { unset($data[$key]); } } ?> 前回の回答にもかいたように、$value[0]だけチェックすれば いいのでしょうか?仕様が書いてないので、回答も中途半端に ならざるをえませんが・・・

jyuu
質問者

お礼

ありがとうございます^^。 おかげさまでできました。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

×if(preg_match($pattern, $value[$key])) { ○if(!preg_match($pattern, $value[0])) { 多次元配列の1番目(0番要素)をみればよいのですよね? ちょっと考えればわかりますが$keyでやると、 とんでもない場所を参照しますよ。 それとマッチしないのを選ぶなら否定(!)をつけないといけませんね。

jyuu
質問者

お礼

ありがとうございます。 >ちょっと考えればわかりますが$keyでやると、 >とんでもない場所を参照しますよ。 ではどのようにするのが良いでしょうか?いい方法が浮かばなくて困っています。

関連するQ&A