Tengo una matriz multidimensional de PHP que necesito selectivamente Imprima al escritor de Excel. Tengo algo como esto:
array(2) {
[10227]=>
array(9) {
["user"]=>
string(5) "10227"
["talk_time"]=>
string(1) "8"
["acw"]=>
string(1) "0"
["idle"]=>
string(1) "6"
}
[10236]=>
array(9) {
["user"]=>
string(5) "10236"
["talk_time"]=>
string(2) "10"
["acw"]=>
string(1) "3"
["idle"]=>
string(1) "0"
}
}
Y en Excel necesito que se vea un poco así:
User | talk_time | acw | idle
10227 | 8 | 0 | 6
10236 | 10 | 3 | 0
Creo que puedo administrar la 'escritura' para sobresalir, pero parece que no puedo hacer que el PHP escriba selectivamente el valor para cada campo donde y cómo lo quiero. He leído mucho y he probado muchas cosas, creo que la respuesta sería usar dos bucles foreach uno para la matriz 'inicial' y otra para la matriz de segunda dimensión, pero por alguna razón no puedo hacer que funcione. También he intentado usar 'extracto' pero no fue demasiado bien ... no soy un programador PHP 'entrenado'. Google ha sido mi universidad (y Stackoverflow mi facultad) y aunque no tengo demasiados problemas para trabajar con matrices ..., el mundo se pone al revés con matrices multidimensionales ...
Cualquier ayuda sería muy apreciada.
¡Gracias!
----- Editar ----- OK, no necesito la función 'Exportar a Excel', puedo manejar eso una vez que pueda asignar el valor de la matriz a una variable.
Actualmente estoy haciendo esto:
foreach ($agents as $row){
$USER=$row["user"];
echo "$USER\n";
foreach($row as $col){
$TALK_SEC=$col["talk_sec"];
}
}
Pero todo lo que estoy recibiendo es
1023610236102361023610236102361023610236102361023610236102361023610236102361023610236102361023610236102361023610236
Cuál es mi primer agente (estoy limitando mi consulta a 1 -Limit 1-) veces 24 veces. Si agrego un eco a $TALK_SEC
, Obtendría el primer número de cada uno de los tres cuatro campos que estoy preguntando alrededor de las 24 veces que el agente será 'escupir' ...
Edición final y respuesta
Pude hacer que funcionara usando una sola declaración de Foreach:
foreach ($agents as $row){
//VAR_DUMP($row);
$USER=$row['user'];
$TALK=$row['talk_time'];
$ACW=$row['acw'];
$IDLE=$row['idle'];
Ahora todo lo que tengo que hacer es imprimir los nombres de variables ($USER
, $TALK
, etc ...) en la hoja de cálculo con la que ya he creado PEAR::EXCEL_WRITER
. Por supuesto, debe crear un bucle para iterar sobre las diferentes $USERS
que su consulta saldrá.