• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:テキストファイルの指定文字列表示)

テキストファイルの指定文字列表示

このQ&Aのポイント
  • あるブラウザにて、あるテキストファイルの有る部分を抽出して表示させる方法を考えています。
  • テキストファイルは同階層にあり、不定期に更新されます。
  • php4.3.2を使用して、111111111111を除いた2回目の空行までの全ての文字列を表示させたいです。

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

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

いろいろやり方があるとは思いますが、スマートに 書くとこんな感じでしょうか? <?PHP function mytrim(&$item){//(1) $item=str_replace(Array("\r","\n"),Array("",""),$item); } $lines=file("./aaa.txt");//(2) array_walk($lines, 'mytrim');//(3) $blankline=array_keys($lines,"");//(4) $lastline=$blankline[1]-1;//(5) for($i=0;$i<=$lastline;$i++){ if($lines[$i]!="111111111111"){//(6) print $lines[$i]."<br>"; } } ?> (1)mytrimはテキストファイルの改行が\rか\nか\r\nのいずれ かわからないトリムしています。 (2)まず、fileですべての行を読み取り (3)arra_walkでmytrimを呼び出し、すべての要素の改行マークを はずします (4)ブランク行をさがします (5)出力する最後の行は2番目のブランク行なので引数は1 (6)111・・・の行は表示しないとのことなので除外します。

wf3255
質問者

お礼

エレガントなご回答、誠に感謝いたします。 希望どおりの動きが出来ました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

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

phpで呼び出すということはhtmlと同様、textは 改行がきちんとされませんがよろしいのですか? また、質問意味がわかりにくいのですが、 具体的には222・・・の行から・・・888の行までが 表示されればよいのでしょうか?

wf3255
質問者

補足

>phpで呼び出すということはhtmlと同様、textは >改行がきちんとされませんがよろしいのですか? すいません、忘れていました。スクリプトで改行タグ入れないとダメですね。 >また、質問意味がわかりにくいのですが、 >具体的には222・・・の行から・・・888の行までが >表示されればよいのでしょうか? そのとおりです。 222222222222 3333333333333 4444444444 (空行) 55555555 6666666 66666666 8888888 みたいに表示させたいのです。

すると、全ての回答が全文表示されます。

関連するQ&A