En abstracto, tengo esto:
Código PHP:
$i = 12;
$i++;
echo $i-1;
Lo uso para recorrer un directorio con archivos numerados, y comprobar cual es el último. Empiezo el conteo desde 12 porque no me interesan los anteriores.
La cuestión es que mi script comprueba si un archivo existe o no. Si existe, aumenta el valor de $i para comprobar si el próximo existe. Ej:
boletin12.html
boletin13.html
La función empieza por el 12. Existe. Incrementa el $i. Encuentra el 13. Incrementa el $i. No encuentra el 14, entonces debe devolver $i-1 (es decir, 13).
El error que tengo es que $i-1 me devuelve 14. Entonces tengo que recurrir NO SE POR QUE a $i-2. Y aclaro que en mis archivos no hay ningun boletin14.html
La funcion es esta. Cuál puede ser el error de logica?
Código PHP:
function obtener_boletin() {
global $carpeta_boletines;
$i = 12; // numero de boletin desde donde empezar a buscar el mas actual
while(true){
$archivo = 'boletin' . $i++ . '.html';
if(!file_exists($carpeta_boletines.$archivo))
return file_get_contents($carpeta_boletines.'boletin' . ($i-2) . '.html');
}
}