PHPでファイルを作成する3つの方法

  • このエントリーをはてなブックマークに追加
  • Pocket

スポンサードリンク

PHPでファイルを作成する方法をいくつかご紹介します。

処理中にファイルがなければ自動的に作成してくれるもので、ファイルを開いたりファイルを書き込む途中や、ファイルの更新日をセットする際などさまざまなタイミングで作成可能です。

 

touch関数で空ファイル作成

ファイルの最終更新日および最終アクセス時間をセットします。

ファイルが存在していなかったら、ファイルが作成されます。

ファイルを1個作成

以上でファイルが作成されました。

ファイルを複数作成

file.txtを作成しました。
file2.txtを作成しました。
file3.txtを作成しました。

foreach()を使って、複数のファイルを作成しました。

参考:PHPのforeachで配列処理

file_exists()はファイルが存在しているかをチェックしてくれる関数で、if文を使いファイルがあるかどうかを判定しており、ファイルがなかった場合にのみtouch()でファイル作成を試みています。

ただ、元々はファイルの最終更新日をセットする関数なので、ファイルの最終更新日が変わっても問題ない場合は、if文で条件分岐する必要はないでしょう。

touch関数の構文

touch ( 対象ファイル名 [ , 最終更新日 [ , atime]]([ ]は省略可));

touch()はもともと、ファイルの最終更新日やアクセス時刻を任意の日時に書き換える関数です。

もし対象ファイルが存在しない場合、自動的にそのファイル名で作成してくれるため、先ほどのサンプルはそれを利用したものです。

fopen関数でファイル作成

ファイルやURLをオープンします。

ファイル書き込み時にファイル作成

fwrite()などを使ってファイルに書き込む際、fopen()でまずファイルをオープンして、処理できる状態にします。

ただ、もしファイルが存在しない場合はtouch()同様、自動で作成してくれるので、それを利用します。

ファイルに書き込む際に、ファイルがなければ自動で作成するので、より実用的ではないでしょうか。

詳しくは、以下の記事で書いていますので、確認してみてください。

参考:fwrite関数で書き込み

file_put_contents関数でファイル作成

ファイルに文字列を書き込みます。

より簡単に書き込み時にファイル作成

先ほどのfopen()を使った書き込みだと、fopen()fwrite()fclose()と3つの関数を使います。

ただ、このfile_put_contents()を使うと、この3つの関数の働きを1つでやってくれるため、より簡単に書き込みができます。

そしてtouch()同様この関数も、ファイルがなければ自動で作成するのでより実用的でしょう。

詳しくは、以下の記事でご確認ください。

参考:file_put_contents関数で簡単に書き込み

スポンサードリンク

  • このエントリーをはてなブックマークに追加
  • Pocket

コメントを残す

*