(PHP 4 >= 4.0.3, PHP 5, PHP 7)
is_uploaded_file — Indica si el archivo fue subido mediante HTTP POST
$filename
) : bool
Devuelve TRUE si el archivo nombrado por filename fue
subido mediante HTTP POST. Esto es útil para intentar asegurarse de que un
usuario malicioso no ha intentado engañar al script haciéndole trabajar con
archivos con los que no debiera de estar trabajando--por ejemplo,
/etc/passwd.
Este tipo de comprobación es especialmente importante si hay alguna posibilidad de que nada hecho con los archivos subidos pueda revelar su contenido al usuario, o incluso a otros usuarios en el mismo sistema.
Para un funcionamiento apropiado, la función is_uploaded_file() necesita un argumento como $_FILES['archivo_usuario']['tmp_name'], - el nombre del archivo subido de la máquina del cliente $_FILES['archivo_usuario']['name'] no funciona.
filenameEl nombre de archivo que se va a comprobar.
Devuelve TRUE en caso de éxito o FALSE en caso de error.
Ejemplo #1 Ejemplo de is_uploaded_file()
<?php
if (is_uploaded_file($_FILES['archivo_usuario']['tmp_name'])) {
echo "Archivo ". $_FILES['archivo_usuario']['name'] ." subido con éxtio.\n";
echo "Monstrar contenido\n";
readfile($_FILES['archivo_usuario']['tmp_name']);
} else {
echo "Posible ataque del archivo subido: ";
echo "nombre del archivo '". $_FILES['archivo_usuario']['tmp_name'] . "'.";
}
?>