file_exists() no devuelve nada...

Iniciado por |Miguel|, 17 Enero 2013, 16:02 PM

0 Miembros y 1 Visitante están viendo este tema.

|Miguel|

Buenas qué tal?

Pues básicamente eso, que estoy intentado usar esa función en un bucle para ver si existen una serie de archivos en mi servidor y esa función no devuelve nada, ni TRUE ni FALSE... se supone que si el archivo existe pero no tengo acceso a el debería devolver FALSE, pero nada...

Os dejo el código:
Código (php) [Seleccionar]

try {
$existe = file_exists($ruta_imagen);
clearstatcache();
} catch (Exception $e) {
$existe = 'Excepción capturada: '.$e;
}
echo($existe);


No imprime nada...

Gracias.

#!drvy

echo no debe devolverte TRUE o FALSE. En todo caso para TRUE te devolveria 1 y para FALSE nada.
Cambia el echo $existe por echo var_dump($existe); y prueba.

Saludos

|Miguel|

Gracias.
Me devolvía false siempre, a pesar de que los archivos por los que pregunto sí existen... Quizá sea tema de que el php.ini de mi servidor no está bien configurado... a ver si encuentro el parámetro que hay que configurar.

O que la ruta que le paso está mal... XD

|Miguel|

Pues no, la ruta está bien...

¿alguien sabe qué parámetro del php.ini tengo que configurar y cómo para que funcione esto?

Gracias!

#!drvy

#4
Podrias mostrar la ruta que usas para los archivos y donde esta situada (ruta) la funcion que comprueba si existen ?

Aparte, debes saber que no basta con dar permiso a los archivos que quieres buscar. Tambien debes dar permiso a las carpetas.

Ej: Supongamos que nuestra función se encuentra en /var/www/comprobar.php y queremos comprobar un archivo en /var/www/carpeta1/carpeta2/carpeta3.

/var/www/comprobar.php - 777
/var/www/carpeta1 - 777
/var/www/carpeta1/carpeta2 - 600
/var/www/carpeta1/carpeta2/carpeta3 - 777
/var/www/carpeta1/carpeta2/carpeta3/archivo.php - 777

En este caso file_exist debería retornarte FALSE porque no puede acceder mas allá de la carpeta1 (siempre y cuando el php no corra como propietario de esas carpetas).

Saludos

|Miguel|

ficheros: /public_html/wp-content/uploads/imgs
la función file_exists es propia de PHP y la llamo desde: /public_html/wp-content/themes/cadabrapress_nitin/featured-posts.php

lucaslopez0000

No entiendo para qué tanto código.
haz un if(file_exists("rutaquesea"))
;)
La manera mas simple de solucionar los problemas de windows , los virus , el spyware , la basura de microsoft en general

USA LINUX

|Miguel|

Cita de: The_C_Coder en 15 Febrero 2013, 21:41 PM
No entiendo para qué tanto código.
haz un if(file_exists("rutaquesea"))
;)
Es lo primero que hice, y la función no me devuelve nada, exista o no el fichero.
Un saludo.

kalvinman

Una cosa que tal ves pueden no estar considerando y que a mi me pasaba muy seguido es diferenciar entre el file_exist y el is_file

if(file_exist("ruta")) dara true aunque este vacio siempre que el servidor envie una respuesta

if(is_file("ruta")) es mas seguro ya que solo dara true si la ruta corresponde a un archivo exacto y no a un directorio.

|Miguel|

Cita de: kalvinman en  1 Marzo 2013, 21:42 PM
Una cosa que tal ves pueden no estar considerando y que a mi me pasaba muy seguido es diferenciar entre el file_exist y el is_file

if(file_exist("ruta")) dara true aunque este vacio siempre que el servidor envie una respuesta

if(is_file("ruta")) es mas seguro ya que solo dara true si la ruta corresponde a un archivo exacto y no a un directorio.
También he probado esa función, y tengo el mismo problema.Las dos devuelve FALSE siempre...