Resumo : neste tutorial você aprenderá como usar o PHP tmpfile()
e tempnam()
funções para criar um arquivo temporário.
Introdução ao arquivo temporário
Um arquivo temporário só existe durante a execução do script. Isso significa que o PHP exclui automaticamente o arquivo temporário quando o script termina.
Para criar um arquivo temporário, você usa a tmpfile()
função:
tmpfile ( ) : resource|false
Linguagem de código: JavaScript ( javascript )
A tmpfile()
função cria um arquivo temporário em w+
modo leitura/gravação ( ). A tmpfile()
função retorna o identificador de arquivo. Se a função não conseguir criar o arquivo, ela retornará false
.
Observe que a tmpfile()
função cria um arquivo temporário com um nome exclusivo.
Na verdade, o PHP exclui automaticamente o arquivo temporário criado pela tmpfile()
função:
- Quando você fecha o arquivo chamando a
fclose()
função. - Quando o identificador do arquivo não possui nenhuma referência.
- ou quando o script terminar.
Exemplo de função PHP tmpfile()
O exemplo a seguir usa a tmpfile()
função para criar um novo arquivo temporário e escrever um texto nele:
<?php
$f = tmpfile();
if (false !== $f) {
// write some text to the file
fputs($f, 'The current time is ' . strftime('%c'));
}
echo 'The current time is ' . strftime('%c');
exit(1);
Linguagem de código: HTML, XML ( xml )
Como funciona.
- Primeiro, crie um novo arquivo temporário usando a
tmpfile()
função. - Segundo, escreva uma string no arquivo usando a
fputs()
função.
A função tempnam()
A tempnam()
função cria um arquivo temporário em um diretório e retorna o caminho completo para o arquivo temporário:
tempnam ( string $directory , string $prefix ) : string|false
Linguagem de código: PHP ( php )
A tempnam()
função possui dois parâmetros.
$directory
é o diretório do arquivo temporário. Se o diretório não existir ou não for gravável, criatempnam()
o arquivo temporário no diretório temporário do sistema especificado pelaTMPDIR
variável de ambiente no Unix ou pelaTMP
variável de ambiente no Windows.$prefix
é o prefixo do nome do arquivo temporário.
O exemplo a seguir mostra como usar a tempnam()
função para criar um arquivo temporário no tmp
diretório:
<?php
$name = tempnam('tmp', 'php');
// full path to the temp file
echo $name; //C:\xampp\htdocs\tmp\phpA125.tmp
// open the temporary file
$f = fopen($name, 'w+');
if ($f) {
// write a text to the file
fputs($f, 'the current time is ' . strftime('%c'));
fclose($f);
}
Linguagem de código: HTML, XML ( xml )
Neste exemplo, se você passar uma string vazia para o diretório, a tempnam()
função criará o arquivo temporário no diretório temporário do sistema, por exemplo, no Windows, é:C:\Users\<username>\AppData\Local\Temp\php778.tmp
Resumo
- Use a
tmpfile()
função para criar um arquivo temporário que existe apenas durante a execução do script. - Use a
tmpname()
função para criar um arquivo temporário em um diretório e retornar o caminho completo do arquivo.