tempnam

(PHP 3, PHP 4, PHP 5)

tempnam -- ユニークなファイル名を生成する

説明

string tempnam ( string dir, string prefix )

ユニークなテンポラリファイル名を、パーミッションを 0600 に設定し、 指定したディレクトリに作成します。 指定したディレクトリが存在しない場合、tempnam() はシステムのテンポラリディレクトリにあるファイル名を生成し、 その名前を返します。

PHP 4.0.6 より前では、関数 tempnam() の動作はシステムに依存していました。Windows において TMP 環境変数は dir パラメータを上書きします。Linux においては、 TMPDIR 環境変数が優先されます。一方 SVR4 においては、 指定したディレクトリが存在する場合は、常に dir パラメータを使用します。疑問がある場合は、tempnam(3) に関するシステムドキュメントを参照ください。

注意: PHP が指定されたパラメータ dir にファイルを生成することができない場合、 システム標準のフォールバックが実行されます。

新しいテンポラリファイル名を返し、失敗した場合には FALSE を返します。

例 1. tempnam() の例

<?php
$tmpfname
= tempnam("/tmp", "FOO");

$handle = fopen($tmpfname, "w");
fwrite($handle, "writing to tempfile");
fclose($handle);

// ここで何か行う

unlink($tmpfname);
?>

注意: この関数の動作は 4.0.3 で変更されました。文字列が生成された時間の間や スクリプトがファイルの作成にとりかかる前にファイルシステムに現れ る可能性がある場合のファイルとの競合を回避するためにもテンポラリ ファイルは作成されます。このファイルは自動的に削除されないため、 不要となった場合にはこのファイルを削除する必要があることに注意してください。

tmpfile()sys_get_temp_dir() および unlink() も参照ください。