Hola,
Me parece que el problema que tienes se debe a la prioridad del operador lógico `&&' en el interior del `while'. Tal y como lo has escrito, esa expresión lo que hace es asignarle a la variable $file el valor de la comparación lógica ``readdir ($dir)) && !$enc''. Puedes resolver esto definiendo explícitamente la prioridad de las expresiones mediante paréntesis. Por ejemplo, quizás quieras probar algo como:
Código:
<?php
$enc = false;
$dir = opendir ('listado');
while (($file = readdir ($dir)) && ! $enc) {
echo "FILE: " . $file. "<br>";
if ($file != "." && $file != "..") {
// Divide la palabra en dos partes utilizando como separados
// el "." y mete el resultado en una posicion del array
$res = explode (".", $file);
/*** Segmento comentado por el momento ***
if(condicion) {
unlink ($file);
$enc=true;
}
***/
}
}
closedir ($dir);
?>
O incluso podrías usar el operador `and', que tiene una precedencia menor que `&&'. En tal caso, la línea del while luciría algo como:
Código:
while ($file = readdir ($dir) and ! $enc) {
Un cordial saludo