Eu estava apenas procurando a mesma coisa e percebi que, mais uma vez, meu pensamento é diferente porque sou da velha escola. Volto ao BASIC e PERL e às vezes esqueço como as coisas são fáceis no PHP.
Acabei de fazer essa função para tirar todas as configurações do banco de dados onde estão três colunas. setkey, item (chave) e valor (valor) e coloque-os em uma matriz chamada configurações usando a mesma chave / valor sem usar push, como acima.
Muito fácil e simples realmente
// Obter todas as configurações
$ configurações = getGlobalSettings ();
// Aplicar opção de tema do usuário
$ theme_choice = $ settings ['tema'];
.. etc etc etc ....
função getGlobalSettings () {
$ dbc = mysqli_connect (wds_db_host, wds_db_user, wds_db_pass) ou die ("Erro no MySQL:". mysqli_error ());
mysqli_select_db ($ dbc, wds_db_name) ou die ("Erro no MySQL:". mysqli_error ());
$ MySQL = "SELECT * FROM systemSettings";
$ resultado = mysqli_query ($ dbc, $ MySQL);
while ($ row = mysqli_fetch_array ($ resultado))
{
$ settings [$ row ['item']] = $ row ['value']; // NECESSIDADE DE IMPULSÃO
}
mysqli_close ($ dbc);
retornar $ configurações;
}
Assim como os outros posts explicam ... No php não há necessidade de "PUSH" um array quando você estiver usando
Chave => Valor
E ... Também não há necessidade de definir a matriz.
$ array = array ();
Não precisa definir ou pressionar. Apenas atribua $ array [$ key] = $ value; É automaticamente um envio e uma declaração ao mesmo tempo.
Devo acrescentar que, por razões de segurança, (P) ou (H) rotações indefesas (P), quero dizer Programação para Leigos, quero dizer PHP .... hehehe, sugiro que você use esse conceito apenas para o que pretendia. Qualquer outro método pode ser um risco de segurança. Lá, fez o meu aviso!