Código PHP:
Ver originalArray ( [server_protocol
] => http
) Array ( [server_domain
] => localhost
) Array ( [server_path_to
] => b
) Array ( [server_port
] => 80 )
Sí reescribe la variable (ha imprimido un array por cada vez que ha recorrido el bucle, en lugar de ir sumándolos y que al final quede un array con todos los valores), pues el resultado final debería ser:
Código PHP:
Ver originalArray ( [server_protocol
] => http
[server_domain
] => localhost
[server_path_to
] => b
[server_port
] => 80 )
Y no solo uno de los valores, ergo, sí, se reescribe. Cuando pasas una variable por un bucle y le vas asignando un valor se va reescribiendo, no agregando.
He probado a hacer print_r($config) dentro del bucle while y hasta ahí tiene los valores. Una vez sale del while (misteriosamente) ya no los tiene.
Código PHP:
Ver originalfunction get_config_values(){
global $db;
$query = $db->sql_query("SELECT * FROM bl_config");
while ($result = $db->fetchfield($query)) {
$result['config_name'] => $result['config_value'],
));
}
}
No imprime nada.
Código PHP:
Ver originalfunction get_config_values(){
global $db;
$query = $db->sql_query("SELECT * FROM bl_config");
while ($result = $db->fetchfield($query)) {
$result['config_name'] => $result['config_value'],
));
}
}
Imprime: Array ( [server_protocol] => http ) Array ( [server_protocol] => http [server_domain] => localhost ) Array ( [server_protocol] => http [server_domain] => localhost [server_path_to] => b ) Array ( [server_protocol] => http [server_domain] => localhost [server_path_to] => b [server_port] => 80 )
El valor de $config cada vez que recorre el bucle. Al tener el array_merge, cada vez que lo recorre tiene más valores.
El caso es que no comprendo que si ahí los tiene, justo debajo, tras salir del while, $config esté vacío.
El código de paketetrueke funciona mejor, es menos código y sin el array_merge, pero el problema es el mismo, al salir del while, $config está vacío.