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.
