Estaba buscando lo mismo y me di cuenta de que, una vez más, mi pensamiento es diferente porque soy de la vieja escuela. Regreso a BASIC y PERL y a veces olvido lo fácil que son las cosas en PHP.
Acabo de hacer esta función para tomar todas las configuraciones de la base de datos donde hay 3 columnas. setkey, item (key) y value (value) y colóquelos en una matriz llamada configuración usando la misma clave / valor sin usar push como se indicó anteriormente.
Bastante fácil y simple realmente
// Obtener todas las configuraciones
$ settings = getGlobalSettings ();
// Aplicar elección de tema de usuario
$ theme_choice = $ settings ['tema'];
.. etc etc etc ....
función getGlobalSettings () {
$ dbc = mysqli_connect (wds_db_host, wds_db_user, wds_db_pass) o muere ("Error de MySQL:". mysqli_error ());
mysqli_select_db ($ dbc, wds_db_name) o morir ("Error de MySQL:". mysqli_error ());
$ MySQL = "SELECT * FROM systemSettings";
$ resultado = mysqli_query ($ dbc, $ MySQL);
while ($ row = mysqli_fetch_array ($ resultado))
{
$ settings [$ row ['item']] = $ row ['value']; // NO NECESITA EMPUJAR
}
mysqli_close ($ dbc);
devolver $ settings;
}
Entonces, como explican las otras publicaciones ... En php no hay necesidad de "EMPUJAR" una matriz cuando está usando
Clave => Valor
Y ... No hay necesidad de definir primero la matriz tampoco.
$ matriz = matriz ();
No es necesario definir o empujar. Simplemente asigne $ array [$ clave] = $ valor; Es automáticamente un empuje y una declaración al mismo tiempo.
Debo agregar que por razones de seguridad, (P) o (H) elpless (P) rotection, me refiero a Programación para Dummies, me refiero a PHP ... jejeje, sugiero que solo utilices este concepto para lo que pretendía. Cualquier otro método podría ser un riesgo para la seguridad. ¡Allí, hice mi descargo de responsabilidad!