Escribir el resultado de un array en un archivo

Vengo de navegar de php.net, de "googlear", por mas de 4 horas, y no encuentro la forma, al menos menos complicada de grabar los datos de un arreglo...

La FAQ Escribir el resultado de un array en un archivo tiene

Pertenece a la categoría:
Pregunta
Vengo de navegar de php.net, de "googlear", por mas de 4 horas, y no
encuentro la forma, al menos menos complicada de grabar los datos de un
arreglo (array) en un archivo, sea este de preferencia .cvs.
Los datos salen de una sentencia SQL que ejecuta un Store Procedure, ya
que con los datos del mismo, tengo que hacer otras consultas y
actualizaciones.(el mismo me devuelve cerca de 15 campos, y la verdad,
andar escribiendo $row['campo1'], etc. no creo que a nadie le guste).


En el site de PHP.NET, tienen varios ejemplos, pero se que hay gente que
siempre exprime al maximo el codigo y hace lo mismo en menos lineas.

Respuesta de Ernesto Spiro
Algo muy sencillo es utilizar el foreach para recorrer rapidamente los elementos del arreglo de resultados.
Volver al árbol de categoríasVolver al árbol de categorías

Comentarios

elbeto

03/4/2009
Como dice nuestro amigo Ernesto lo mejor es utilizar el bucle foreach que seria algo asi..

foreach($row as $nomCampo => $valorCampo)
{
echo "$nomCampo." ".$valorCampo."<br>";
}

Espero te ayude

Alograg

16/4/2009
la mejor opcion
while($row=mysql_fetch_assoc($rs))
$fileLines[]=implode(',',$row);
file_put_content('datos.cvs',$fileLines);
Checa estas lineas, como funciona cada instrucción y aprenderás mas.

Fernando

17/4/2009
Otra opción...
No sé bien tu requerimiento final.
Una posibilidad es el foreach como bien te muestra el otro comentario, pero en ese caso, pensá que al hacer "... as $k=> $v", ésta última va a ser el arreglo con todos los campos de tu consulta.

Otra posibilidad, no tan ajustable a un CVS (y si es que lo vas a volver a levantar con PHP) es directamente serializar el array:

$salida = serialize($tuArray);
fwrite($salida, $tu_file_handler);

Si luego vas a leer ese archivo desde PHP, solo tenes que hacer el proceso inverso:

while(... {
$array = unserialize($linea_del_archivo);
}

Podes jugar bastante con esos dos métodos que son "casi mágicos" (claro, cuando es lo que uno necesita).

Espero haber ayudado, al menos dándote una pista para seguir.

Si no, otro recurso que uso mucho es PHPclasses.org
Vas a encontrar mucho código, y de buena calidad.

Saludos!!
FAQ relacionadas
Volver al árbol de categoríasVolver al árbol de categorías