やりたいこと
テキスト配列としてを読み込んで、
且つ文字列で分割してループして表示させたいです。
初心者なので全く見当違いなことをしていたり、うっかりミスがあるのかもしれませんがよろしくお願い致します。
<?php $ardate=explode("<>","番号<>名前<>コメント<>時間"); echo $ardate[1]; echo $ardate[2]; echo $ardate[3]; ?> <br>(ok) <hr> <p>2<>で分割し配列と繰り返しと表示</p> <?php $ardate=explode("<>","番号<>名前<>コメント<>時間"); foreach($ardate as $value){ echo $value ." "; } ?> <br>(ok) <hr> <p>3テキストファイルを配列として読み込み繰り返し表示</p> <?PHP $filename = "tameshi.txt"; $ret_array = file( $filename ); foreach($ret_array as $value1 ){ echo $value1; } ?> <hr> <P>4テキストファイルを読み込み指定文字列で分割して表示</P> <?php $filename = "tameshi.txt"; $ret_array = file( $filename ); $bunkatu = explode( "<>", $ret_array ); foreach($bunkatu as $value2 ){ echo $value2; } ?> <p>2では分割して表示されている。</p> <p>3で分割しなければ表示される</p> <p>explodeしてくれない<br>何故かarrayと表示される</p>
うまくいかないので、単純なコードから試して行って一個ずつ条件を増やしてテストしていきました。
4番のみうまくいきません。
Arrayとだけ表示されてしまいます。
2番と同じことをファイルを読み込んでやっているはずなのにと思うのですがどこが悪いのかわかりません。
ver_dumpの結果このように表示されました。
$ret_array
rray(5) { [0]=> string(35) "1<>名前<>コメント<>日時 " [1]=> string(32) "1<>名前<>コメント<>日時 " [2]=> string(32) "1<>名前<>コメント<>日時 " [3]=> string(32) "1<>名前<>コメント<>日時 " [4]=> string(31) "1<>名前<>コメント<>日時" }
$bunkatu
array(4) { [0]=> string(1) "1" [1]=> string(6) "名前" [2]=> string(12) "コメント" [3]=> string(7) "日時 " }
と表示されました。
テキストファイルの中身は以下です
1<>名前<>コメント<>日時
1<>名前<>コメント<>日時
1<>名前<>コメント<>日時
1<>名前<>コメント<>日時
1<>名前<>コメント<>日時

回答1件
あなたの回答
tips
プレビュー