(PHP 4, PHP 5, PHP 7, PHP 8)
tempnam — 一意なファイル名を生成する
$directory
, string $prefix
): string|false一意なテンポラリファイル名を、パーミッションを 0600 に設定し、 指定したディレクトリに作成します。 指定したディレクトリが存在しない場合やディレクトリに書き込めない場合は、tempnam() はシステムのテンポラリディレクトリにあるファイル名を生成し、 そのファイルへのフルパスを (名前を含めて) 返します。
directory
テンポラリファイルを作成したいディレクトリ。
prefix
作成されるテンポラリファイルのプレフィックス。
注意: プレフィックスの最初の63文字のみを使用します。 Windows では、プレフィックスの最初の 3 文字のみを使用します。
新しいテンポラリファイル名 (パスを含む) を返し、失敗した場合には false
を返します。
バージョン | 説明 |
---|---|
7.1.0 | tempnam() は、 システムのテンポラリディレクトリにフォールバックした場合に 警告を生成するようになりました。 |
例1 tempnam() の例
<?php
$tmpfname = tempnam("/tmp", "FOO");
$handle = fopen($tmpfname, "w");
fwrite($handle, "writing to tempfile");
fclose($handle);
// ここで何か行う
unlink($tmpfname);
?>
注意: PHP が指定されたパラメータ
directory
にファイルを生成することができない場合、 システム標準のフォールバックが実行されます。 NTFS では、指定したdirectory
に 65534 を超える数のファイルが存在する場合にも同じことが起こります。