【PHP】メモ帳などのファイルの内容を全部出力する関数「readfile()」

Pocket

今回はPHPで使用できる、メモ帳などのテキストファイルの内容を全部出力する関数「readfile()」を使用してみます。
「fgets()」や「fgetc()」に繰り返し処理を使うことなく全ての内容を取得し、そのまま出力することができるので、メモ帳の内容をそのまま出力したいプログラムを実行する場合は、この「readfile()」のほうが便利そうですね。

テキストファイルの内容を全部出力する関数「file_exists()」

記述方法としては、第一引数に読み込みたいファイル名を記述するだけです。
これだけで内容の取得から出力まで全部やってくれます。「print」とかの出力コードも必要ありません。すごく簡単ですね(;^ω^)

それでは動作を確認してみましょう。

まずは読み込みたいメモ帳ファイルを用意します。

・「test.txt」
readfile00

 

それではPHP側のサンプルコードです。

 

実行結果です。

readfile01

メモ帳ファイルの内容を取得し、出力までしてくれましたね(*’ω’*)

 

メモ帳での改行コードをHTMLで反映させる方法

さて、サンプルコードではメモ帳の内容を、「readfile()」を用いてブラウザに出力できることが確認できました。
しかしよく見てみると、メモ帳では改行されているところが、ブラウザでは改行になっていませんね。

これは「HTMLが改行コードや””(クォートまたはダブルクォート)で囲まない半角スペースは無視してしまう」という特徴からくる結果です。

その為、メモ帳側に改行したい箇所に「<br>」タグを記述することでこの問題は回避することができるのですが、いちいち「<br>」タグを記述するのも面倒ですね。そこで「readfile()」のコードを、「<pre></pre>」で囲むことで解決します。

 

実行結果です。

readfile02

ブラウザ側でも改行されました。「<pre>」は文字列内の改行コードや半角スペースをそのまま出力するというタグです。改行コードを無視せず、書き出すことによってブラウザにも改行を行っています。

エッグ

シェアする

コメントを残す

メールアドレスが公開されることはありません。

コメントする