PHP Criar arquivo temporário

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|falseLinguagem 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|falseLinguagem 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, cria tempnam()o arquivo temporário no diretório temporário do sistema especificado pela TMPDIRvariável de ambiente no Unix ou pela TMPvariá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 tmpdiretó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.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *