tech.chakapoko.com
Home / PHP / ファイル操作

[PHP]一時ファイルを作成する

一時ファイルを作成する

tempnam関数を利用すると指定したディレクトリに指定したプリフィックスで一時ファイルを作成します。

<?php
$tmpfile = tempnam('/tmp', 'TMP-');
echo $tmpfile . "\n"; // => /tmp/TMP-...

このコードを実行すると /tmp/TMP-geA29F のような名前のファイルが生成されます。ファイル名は他のファイルと衝突しないように自動的に生成されます。

自動的に消える一時ファイルを作成する

tmpfile 関数を使うことでも一時ファイルが作成できます。

tmpfile 関数で一時ファイルを作成するとそのファイルポインタが返されます。そのファイルポインタを使って一時ファイルに読み書きができます。

ファイルはプログラムが終了したときに、または fclose が呼ばれた時に自動的に削除されます。

次のコードは tmpfile 関数を使ったサンプルコードです。

<?php
$f = tmpfile();

fwrite($f, "Hello\n");
fseek($f, 0);
$data = fgets($f);

fclose($f);

echo $data;

このコードを実行するとHelloと表示されます。