IT)ITは、世界とつながる技術。PHP/HTML/CSS/JavaScriptみなさん、こんにちは!ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。このサイトでは、ITについて特化したサイトを運営しています。ここでは、phpのfopen関数について解説します。fopen関数では、上書きするタイミングが異なります。その点についても、詳細を解説していきます。スポンサーリンク目次fopen関数の構文fopen関数のパラメーターfwrite関数で書き込む!fclose関数でファイルを閉じる上書きしたいときの2パターンphpのforenとfwrite関数のまとめfopen関数の構文forenは、ファイルをオープンするための関数です。構文は次のようになります。"パラメーター");?>$filepathに対象ファイルのパスを代入します。fopen関数で、対象ファイルを開いています。パラメーターは、次のどれかを記述します。fopen関数のパラメーターfopen関数のパラメーターには、次のどれかを記述します。用途に応じて使い分けてください。読み込み専用でファイルをオープンしています。書き出しはできません。読み込み/書き出しの両方でオープンします。ファイルが存在しない場合、新規作成は行われません。書き出し専用でファイルをオープンします。ファイルを開いた時点で、ファイルが空になることに注意!ファイルがない場合には新規作成が行われます。書き出し/読み込みでファイルをオープンします。ファイルを開いた時点で、ファイルが空になることに注意!ファイルがない場合には新規作成が行われます。書き出し専用でファイルをオープンします。書き出し/読み込みでファイルをオープンします。書き込み専用でファイルがオープンされます。ファイルが存在したらエラーが出ます。使ったことがないから詳細は知りません。書き出し/読み込みでファイルがオープンします。ファイルが存在したらエラーが出ます。使ったことはないから詳細は知りません。使ったことはないから詳細は知りません。使ったことはないから詳細は知りません。使ったことはないから詳細は知りません。a+ぐらいしか使わないのではないでしょうか?スポンサーリンクfwrite関数で書き込む!fopen関数でオープンしたファイルに書き込む際には、fwrite関数を使います。"パラメーター");fwrite($fp,"hogehoge");?>これでオープンしたファイルへの書き込みができます。fclose関数でファイルを閉じるfopenでオープンしたファイルは、プログラムが終了するまでにクローズしなければなりません。ファイルを使い終わったらクローズしましょう。ファイルのオープンから書き込み、クローズまでの一連の流れは次のコードになります。"パラメーター");fwrite($fp,"hogehoge");fclose($fp);?>これで、PHPからエラーも出力されなくなります。上書きしたいときの2パターンここで、上書きしたいときの2パターンを紹介します。ファイルを上書きするのは、既存のデーターを消して新しい情報を書きだすときなのか、古い情報と比較して新しい情報を残すときなのかで、上書きのタイミングが異なります。既存のデーターを削除して新しいデーターを書き込みしたいときこれは単純にパラメーターをwまたはw+にすれば大丈夫です。ファイルをオープンした瞬間に古いデーターは削除されます。古いデーターと新しいデーターの比較はできません。新旧のデーターを比較してから書き込みたいとき新旧のデーターを比較してから書き込みたいときには、とりあえずaまたはa+の追記モードでオープンしていください。これで、ファイルをオープンした時点では、ファイル内に古いデーターは残っています。個のデーターを読み込んで新旧のデーターを比較できます。ファイルに書き込むときに注意が必要です。ファイルに書き込むときには、そのままfwriteで書き込むと、単なる追記になってしまいます。そこで、ファイルをいったん空にする必要があります。それが次のphpコードです。//ファイルサイズを0にする。//ファイルを閉じる。//ファイルサイズを0にする。//ファイルを閉じる。?>詳細を説明しましょう。LOCK_EX);は、ファイルをロックしています。上書きを行う際に、他のコードからアクセスがあると誤動作が起こるので、一時的に自身以外のアクセスを禁止します。5行目のftruncate($fp,0);は、ファイルサイズを0にします。これで、ファイルのデーターはすべて削除されます。0);は、ポインタをファイルの先頭に移動させます。これで、ファイルの先頭からデーターの記述が行われます。6行目がなかったら、謎の空白ができてしまいます。7行目でようやく書き込みです。8行目でファイルのロックを解除します。9行目でファイルを閉じます。これが、新旧のデーターを比較したいときのファイルオープンと書き込みの方法です。phpのforenとfwrite関数のまとめここまで、phpのfopenとfwriteについて解説を行いました。基本的にはfopenの時のパラメーターで挙動を指定できますが、細かい部分の設定は手打ちのプログラミングになってきます。ただのファイルのオープンと書き出しですが、なかなか奥が深く、はじめてウェブサービスを作成する際の障壁になっている思います。この記事が、そんな方の役に立てれば幸いです。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。このサイトでは、ITに...記事を読む消しても永遠に消えないアラート:様々な無限アラートのコードと仕組み。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。このサイトでは、ITに...記事を読む主要なHTMLタグの一覧と意味と使い方をまとめて紹介します。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。このサイトでは、ITに...記事を読む主要なスタイルシート(CSS)のテクニックをまとめて紹介します。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。このサイトでは、ITに...記事を読むはじめてセゾンクレジットカードを作りました。【何がいい?】独自ドメイン文字列の決め方&選び方Officeのインストールに失敗したときの対処方法【Officeのインストールを開始できませんでした。迷惑メール情報:ゆうちょ銀行を装った詐欺メールに注意!迷惑メール情報:「システムは支払いの詳細にエラーを見つけました。[必要なアクション]」は悪質なフィッシングメール/php/urlblock.phpのログに注意。WordPressの脆弱性を狙った不正アクセスの痕跡です。!主要なレンタルサーバーのネームサーバー設定とDNS設定一覧バリュードメインで.jpドメインを取得する方法。登録者情報とWHois代理公開の手順も紹介。方は、ブログを開設する手順をご覧ください。