Mi problema es el siguiente, con la ayuda de php leo el contenido de un carpeta que contiene muchos archivos de música. Todos inician con el formato año-titulo.mp3. Ahora lo que quiero lograr es que a medida voy obteniendo el listado de los archivos, poder imprimir texto antes y despues de cada año. Así crear grupos, esto con la finalidad de generar un xml.
Por ejemplo:
<Inicia 2008>
2008...titulo.mp3
2008...titulo.mp3
2008...titulo.mp3
<Termina 2008>
<Inicia 2009>
2009...titulo.mp3
2009...titulo.mp3
2009...titulo.mp3
<Termina 2009>
<Inicia 2010>
2010...titulo.mp3
.......
<Termina 2010>
Descartemos el uso de base de datos por motivos de fuerza mayor. Aquí el código que he podido generar pero al final me redunda los datos.
Código PHP :
$path="D:\wamp\www\leyendo\esto"; $dir=dir($path); $contador=0; $concatenar=""; $ano=2007; $grupo = array(); while ($elemento = $dir->read()) { $laExtension=strtolower(end(explode('.',$elemento))); if (($laExtension == 'mp3') and ($elemento != '.') and ($elemento != '..')){ $ano_variante = substr($elemento, 0, 4)."<br/>"; if($ano_variante!=$ano){ // Cuando cambie el año $ano=$ano_variante; if($contador==0){ //Intento crear el primer grupo en el array. arrya[0(abriendo),1(info),2(cerrando)] $contador_abrir=$contador; $contador_info=$contador_abrir+1; $contador_cerrar=$contador_info+1; $grupo[$contador_abrir]="Inicia"; $grupo[$contador_cerrar]="Termina"; }else{//intento crear los demas grupos. $contador_abrir=$contador*3; $contador_info=$contador_abrir+1; $contador_cerrar=$contador_info+1; $grupo[$contador_abrir]="Inicia"; $grupo[$contador_cerrar]="Termina"; } $contador++; } $concatenar.="<br/>".$elemento; $grupo[$contador_info]=$concatenar; } } $dir->close(); print_r ($grupo);
El objetivos principal es: Como imprimir texto antes y despues para encerrar cada grupo según el añó?
Les pido por favor puedan ayudarme con ejemplos para poder encontrar solución a mi problema. De antemano muchas gracias.