Ver Mensaje Individual
  #4 (permalink)  
Antiguo 01/07/2007, 09:19
Manu_Leon
 
Fecha de Ingreso: marzo-2005
Ubicación: Sevilla
Mensajes: 277
Antigüedad: 19 años, 11 meses
Puntos: 2
Re: Listar numeros anteriores a un nº en concreto y uso del foreach

Mi repsuesta a la segunda pregunta:
Para mi gusto es una tontería hacer eso. Si es un archivo de noticias muy fácilmente llegará el día en que tengas almacenadas cientos de noticias, o incluso miles.
Luego si eliminas la noticia 3 tener que renombrar 500 archivos no lo veo factible.

Yo en su lugar usaría un "listado" que contuviera los nombres de los archivos que necesitas:
Por ejemplo:

contenido de Listado.txt:
1
3
16
17
18
21
22
23

como vemos tenemos nombres salteados. se supone que hemos borrado los numeros intermedios. y modificar el contenido del archivo de texto es sumamente facil.

y ahora
Código PHP:
$nombre_archivo=file("listado.txt");
$total_archivos=count($nombre_archivo);

//en $total_archivos tienes el numero total de archivos que hay 
// y en $nombre_archivo tienes un array con los nombres de los archivos (sin txt) 
pero vamos, respondiendo justamente a lo que quieres,se podría ahcer así:

Código PHP:
//$archivo_a_eliminar contendráel numero de archivo, ejemplo 40.
//$total_archivos contendrá el total de archivos del directorio.
unlink($archivo_a_eliminar ".txt");
for(
$i=($archivo_a_eliminar+1); $i<=$total_archivos;$i++){
copy($i ".txt", ($i-1) . ".txt");
unlink($i ".txt");