Tengo un array que es el contenido de un fichero de texto plano que su estructura es la misma en todas sus filas, sólo cambia su contenido. ej.:
Código:
...
// el contenido de cada linea está separado por comas (,)
$s=0;
while(!feof($fichero)){
$linea = fgets($fichero,4096);
$mi_array1[$s] = explode(",",$linea);
$s++;
} // fin del while
...
hasta aquí, todo bien...
ahora tengo que leer este array y crear un array de varios arrays según la condición de un elemento de de una fila, o sea, si el elemento 3 de cada fila de mi_array su valor es 0 con la excepción de 3 ó 4 filas que tienen como valor el 1.
Si lees el array de inicio a fin, cada vez que encuentres el valor 1 en el elemento 3 todo el contenido anterior del array almacenalo en otro array y esa fila y las posteriores serán para otro array hasta que vuelva a encontrar otro valor 1 y así sucesivamente.
No se si me he explicado bien... es como un chivato que cuando lo encuentras creas un array de estructura igual que el original (mi_array1) pero con menos filas.
He probado de varias maneras y no consigo hacerlo. Os pondré como creo que se tiene que hacer pero evidentemente algo no está bien.
Código:
a partir de aquí ya no sale lo que yo esperaba. no se si está mal la creación de los arrays de array o está mal la lectura de los arrays de array$f=0;
For ($s=0;$s<count($mi_array1);$s++){
$descompone=implode(",",$mi_array1[$s]);
$array_temporal=explode(",", $descompone);
if ($mi_array1[$s][2]==1){
$nuevo_array[$f]=$array:temporal;
$f++;
unset($array_temporal);
}
} // fin del for
y ahora quisiera ver, por ejemplo, el nuevo_array, pero sólo los elementos del 2 grupo ($f=1)
Código:
For ($s=0;$s<count($nuevo_array[1]);$s++){
For ($j=0;$j<count($nuevo_array[1][$s]);$j++){
echo $nuevo_array[1][$s][$j]."<br>";
} // fin del for $j
} // fin del for $s
*****************************
por si sirve de algo, esta es la estructura de las filas del fichero de texto plano ($linea):
conceptos= apellido1, apellido2, nombre, jefe, ciudad, pais
fila_1=LOPEZ, GUIRADO, JESUS, 1, MURCIA, ESPAÑA
fila_2=GARCIA, LOPEZ, DIONISIO, 0, MURCIA, ESPAÑA
fila_3=BUSTAMANTE, CANTANTE, JOSE, 0, CACERES, ESPAÑA
fila_n=...
fila_28=DEL POZO, GOME, SERGIO, 1, PARIS, FRANCIA
fila_29=RUIZ, SATUS, ANTONIO, 0, PONTEVEDRA, ESPAÑA
fila_n=...
cada vez que jefe=1 todas las filas siguientes y la misma del jefe tiene que estar en un array y este array está en otro array con todos los jefes y sus empleados. ej.:
array_secciones[0]= la fila de jesus y la de dionisio, jose, etc
array_secciones[1]= la fila de sergio y la de antonio, etc.
*****************************
Gracias de antemano y un saludo a todos.

