2010-11-23 40 views
11
if (!(file_exists(http://mysite.com/images/thumbnail_1286954822.jpg))) { 
$filefound = '0';       
} 

¿por qué no funciona?compruebe si el archivo existe en php

+0

http://stackoverflow.com/questions/981954/how-can-one-check-to-see-if-a-remote-file-exists-using-php – ArK

+0

duplicado posible de [PHP: ¿Cómo comprobar si existe el archivo de imagen?] (Http://stackoverflow.com/questions/7991425/php-how-to-check-if-image-file-exists) –

Respuesta

26
if (!file_exists('http://mysite.com/images/thumbnail_1286954822.jpg')) { 
$filefound = '0';       
} 
+1

if (! File_exists ($ base_url.'images/thumbnail_1286954822.jpg ')) { $ filefound =' 0 '; } es así realmente lo siento. – anonymous

+1

@anonymous en realidad no es así, lo siento, no pidió $ base_url + images/thumbnail_1286954822.jpg usted pidió http: // mysite com/images/thumbnail_1286954822.jpg –

23
  1. La función espera una cadena.

  2. file_exists() no funciona correctamente con HTTP URL.

3

Según su comentario a Haim, ¿se trata de un archivo en su propio servidor? De ser así, debe usar la ruta del sistema de archivos, no la url (por ejemplo, file_exists('/path/to/images/thumbnail.jpg')).

6

file_exists comprueba si un archivo existe en la ruta especificada o no.

Sintaxis:

file_exists (string $filename) 

devoluciones TRUE si existe el archivo o directorio especificado por el nombre de archivo; FALSE de lo contrario.

$filename = BASE_DIR."images/a/test.jpg"; 
if (file_exists($filename)){ 
    echo "File exist."; 
}else{ 
    echo "File does not exist."; 
} 

Otro método alternativo que puede utilizar getimagesize(), devolverá 0 (cero) si el archivo/directorio no está disponible en la ruta especificada.

if (@getimagesize($filename)) {...} 
+0

+1 para @getimagesize, funciona en caso tenemos que pasar un directorio de recursos + nombre de archivo (y cuando el nombre de archivo está vacío). '@getimagesize (IMGDIR."/$ imgname ")' –

+0

sí, gracias por agregar más explicaciones. – IRSHAD