> Faqs > Recorrer archivos con while

Recorrer archivos con while

La verdad es que llevo tiempo sin tocar php y voy muy pez.. tengo dudas con un while que me recorre los archivos dentro de un directorio. Quiero que me imprima solo si existen archivos con extension .jpg y despues llame a una funcion. Esto me lo hace bien.

Ahora el problema es que no se me ocurre dentro de este while la forma de saber si no existe ningun archivo .jpg.

Mi while:
<span class="codigo"> $dir = opendir ("/directorio");

while ( false !== ( $file = readdir($dir) ) ) {
if (strpos($file, '.jpg',1) ) {
llamarfuncion();
}
}
closedir($dir);

</span> He probado con un if dentro del while, pero entonces me llama la funcion tantas veces como archivos hay en ese directorio.. Tiene que llamar una sola vez a la funcion A en el caso de encontrar archivos .jpg; y llamar a la funcion B en caso de no encontrar ninguno; pero como he dicho solo una vez... y aquí me pierdo.

Respuestas

Podrías verificar si existe con una variable a la que pondrías en true si existe al menos una vez. Algo asi... <span class="codigo"> <?
$dir = opendir ("./");
$existe=false;
while ( false != ($file = readdir($dir) ) )
{
if (strpos($file, '.php',1) )
{
$existe=true;
}
}
closedir($dir);

if($existe)
{
echo "llamar funcion A";
}
else
{
echo "Llamar funcion B";
}
?> </span>

Daniel G.