php touchを使ってファイルを作成する

  • 作成日 2021.12.06
  • 更新日 2022.02.27
  • php
php touchを使ってファイルを作成する

phpで、touchを使用して、ファイルを作成するサンプルコードを記述してます。phpのバージョンは8.0です。

環境

  • OS  CentOS Stream release 8
  • php 8.0.0
  • nginx 1.14.1

touch使い方

touchを使用すれば、ファイルを作成することが可能です。

touch('ファイル名');
// ファイルが存在していれば更新日時が更新されます
// 成功した場合は true 、失敗した場合は false を返します。

以下は、ファイル「hoge.txt」の作成を行うサンプルコードとなります。

<?php

echo touch('hoge.txt') ? "成功" : "失敗";
// 成功

hoge.txtが作成されたことが確認できます。

また、すでに「hoge.txt」が存在して、touchが実行されても、更新日時は更新されますが、上書きはされません。

file_put_contents

file_put_contentsを使用して、データの書き込みを行わずに空のファイルを作成することも可能です。

file_put_contents('ファイル名', '書き込むデータ'[, フラグ]);

以下のコードでファイルが作成されます。ただし、file_put_contentsは、ファイルが存在する場合は、上書きされてしまうので注意が必要です。

<?php

file_put_contents('hoge.txt','');

パフォーマンスは、touchの方がいいです。

【参考】 touchとfile_put_contentsでファイルを作成して削除して、また作成するコードを100万回実行した結果

測定結果 : touch
process time: 253.96987 ミリ秒

測定結果 : file_put_contents
process time: 310.50063 ミリ秒