*

テキストファイルの読込みと書込み

公開日: : 最終更新日:2016/01/01 php , ,

今回は、textファイルを読み書きすることについて書きます。
なので、テキストファイルを扱います。
テキストファイルはh、テキストエディタで読み書きでできる
ファイルの事です。フォームを設置して、ユーザーにファイル名を
入力させ、ファイル名が送信されたら指定されたファイルを読み込みます。

サンプルコードの実行結果はこちら

ファイルは次の順序で処理します。
1.ファイルをオープンする
2.ファイルを読み込む又は書き込む
3.ファイルをクローズする

ファイル名のオープンはfopen()関数を使います。
この関数にはファイル名・オープンモードの2つの引数を渡します。
今回は読出しを行うモードで”r”を設定しています。

$fp = fopen($_POST[“title”] ,”r”);

fopen()関数に指定できるオープンモードには、
以下のようなものがあります。

オープンモード 意味
“w” 書き込み用にテキストファイルをオープン
“r” 読み込み用にテキストファイルをオープン
“a” 追記用にテキストファイルをオープン
“w+” 更新のため、書き込み用にテキストファイルをオープン
“r+” 更新のため、読み込み用にテキストファイルをオープン
“a+” 更新のため、追記用にテキストファイルをオープン

feof()関数を使うと、ファイルの終端を判別することができます。

そこにwhile文文を使い、fgets()関数で1行ずつ読み込みます。
サンプルコードだと、textareaタグ内に出力されるので、テキストエリア内に
ファイルの内容が表示されます。

while( !feof($fp) ){
echo fgets($fp);
}

最後に、fclose()関数でファイルをクローズします。
この処理を忘れると、不具合が起きることがあります。

fclose($fp);

ファイルをオープンするときに、file_exists()関数
使ってファイルが存在するかを判定しています。

関数名 戻り値 内容
file_exists(string $filename) boolean ファイルの存在を調べる
fopen(string $filename,string $mode) resource ファイルをオープンする
feof(resource $file) boolean ファイルが終端か調べる
fgets(resource $file) string ファイルから1行読み込む
fclose(resource $file) なし ファイルをクローズ

テキストファイルから1行読み込むにはfgets()関数を使う。

テキストファイルに書き込む

今回は、テキストファイルに文字列を書き込んでみましょう。

サンプルコードの実行結果はこちら




ファイル名:




ファイルを書き込む場合には、fopen()関数の2番目の
引数を”w”(書込み)とします。テキストボックスから送信された内容を、
fputs()関数で1行ずつ書き出しています。

関数名 戻り値 内容
fputs(resource $file) string ファイルに1行書き込む

テキストファイルに1行書き込むには、fputs()関数を使う。

ファイル名入力時の注意点

ファイル名をユーザーに入力させる場合には、
注意しなければならないことがあります。
重要なファイルを読み出したり、書き込まれたりしないように
注意しなければいけません。実際にこうしたファイルを名を
入力させるには、ファイル名を限定する必要があります。

スポンサードリンク

関連記事

catePhp

セキュリティ

ウェブアプリケーションは、セキュリティに注意しないといけません。 例えば、前回作成したメールのフォ

記事を読む

catePhp

for文を使って繰り返し処理を作成してみる

今回は、繰り返し文(loop statement)という物に ついて書きます。どういうときに繰り返

記事を読む

catePhp

PHPでのファイル情報

前回は、データベースを利用して、データを扱うコードを作成しました。 データを管理する方法は。ほかに

記事を読む

catePhp

処理の流れを変えてみる

繰り返し文には一定の処理の流れがあることは、 for文やwhile文の記事で書きました。 P

記事を読む

catePhp

クラスを拡張する

今回は、既に定義したクラスをもとに、新しいクラスを定義することが できます。新しいクラスを作成する

記事を読む

catePhp

正規表現を使う関数

前回まで、正規表現を使った検索を書いてきましたが、 他にも正規表現を使う関数があります。

記事を読む

catePhp

まずはphpのコードを書いてみる

今回新設した「php」カテゴリーの記事では WEBプログラミング言語であるphpについての記事を書

記事を読む

catePhp

論理演算子を使って複数条件を設定する

前回、前々回の記事で条件を指定した条件判断文を 書いてきました。もっと複雑な条件を今回書いていきま

記事を読む

catePhp

整形して出力する

数値や文字列を一定の形式で出力する方法を書いていきます。 printf()という命令を使うと、表示

記事を読む

catePhp

エスケープシーケンスを使ってみる

文字の中には、1文字表すことができない文字があります。 そういう文字は、「\」を最初につけた2文字

記事を読む

スポンサードリンク

Message

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

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">



スポンサードリンク

jQueryMobile
トグルスイッチを設定する

トグルスイッチ(toggle switch)とは、〇型のつまみを左右に

jQueryMobile
項目選択の複数ウィジェットをグループ化する

年月日など、複数のリストから同時に選択したいとき、ウィジェットのグルー

jQueryMobile
<select>により項目選択

ボタンによる選択では、1つの項目だけ選択するか、複数を同時に選択するか

jQueryMobile
値を選択するボタンを表示する

値を選択するボタンは以下の2つがあります。 ・複数の値から1つだ

jQueryMobile
ボタンを設定する

前回の記事では<a data-role="button">

→もっと見る

  • スポンサーリンク

PAGE TOP ↑