is_uploaded_file

(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)

is_uploaded_fileInforma se o arquivo foi enviado por POST HTTP

Descrição

is_uploaded_file(string $filename): bool

Retorna true se o arquivo com o nome filename foi enviado por POST HTTP. Isto é útil para garantir que um usuário malicioso não está tentando levar o script a trabalhar em arquivos que não deveria estar trabalhando -- por exemplo, /etc/passwd.

Este tipo de confirmação é importante principalmente se existe alguma chance que qualquer coisa feita com os arquivos enviados possa revelar seu conteúdo para o usuário, ou mesmo para outros usuários no mesmo sistema.

Para o funcionamento apropriado, a função is_uploaded_file() precisa de um argumento como $_FILES['userfile']['tmp_name'], - o nome do arquivo enviado na máquina do cliente $_FILES['userfile']['name'] não funciona.

Parâmetros

filename

O nome do arquivo sendo verificado.

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Exemplos

Example #1 Exemplo de is_uploaded_file()

<?php

if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
   echo "O arquivo ". $_FILES['userfile']['name'] ." foi enviado com sucesso.\n";
   echo "Mostrando o conteúdo\n";
   readfile($_FILES['userfile']['tmp_name']);
} else {
   echo "Possível ataque de envio de arquivo: ";
   echo "nome do arquivo '". $_FILES['userfile']['tmp_name'] . "'.";
}

?>

Veja Também