Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala pessoal, estou retornando dados do banco e tratando para criar uma treeview. Essa treeview recebe dados de um json que estou gerando em PHP.
Estou conseguindo ordenar o array nos seus vários nívels para Pai->Filho->Neto->... e uso o id de cada elemento para ordenar este array. Até ai ok, mas quando eu gero o objeto com a função json_encode do php, percebo que ele gera com as chaves.
Exemplo do array gerado
[41] => Array
(
[parent_id] =>
[title] => Gestão de Campanhas
[isFolder] => true
[children] => Array
(
[42] => Array
(
[parent_id] => 41
[title] => Tela Campanhas
[isFolder] => true
[children] => Array
(
[43] => Array
(
[parent_id] => 42
[title] => Editar Campanhas
)
[46] => Array
(
[parent_id] => 42
[title] => Excluir Campanha 4
)
[47] => Array
(
[parent_id] => 42
[title] => Excluir Campanha 6
)
[48] => Array
(
[parent_id] => 42
[title] => Excluir Campanha Final
)
[57] => Array
(
[parent_id] => 42
[title] => Detalhes Campanha
)
)
)
Parte do json (exibindo as chaves)
[b]"41":[/b] {
"parent_id": null,
"title": "Gest\u00e3o de Campanhas",
"isFolder": "true",
"children": {
[b]"42":[/b] {
"parent_id": "41",
"title": "Tela Campanhas",
"isFolder": "true",
"children": {
[b]"43":[/b] {
"parent_id": "42",
"title": "Editar Campanhas"
},
[b]"46":[/b] {
"parent_id": "42",
"title": "Excluir Campanha 4"
},
[b]"47":[/b] {
"parent_id": "42",
"title": "Excluir Campanha 6"
},
[b]"48":[/b] {
"parent_id": "42",
"title": "Excluir Campanha Final"
},
[b]"57":[/b] {
"parent_id": "42",
"title": "Detalhes Campanha"
}
}
},
Como o json deve ficar
{
"parent_id": null,
"title": "Gestão de Campanhas",
"isFolder": "true",
"children":
[{
"parent_id": "31",
"title": "Listar Campanha"
}, {
"parent_id": "31",
"title": "Editar campanha"
}, {
"parent_id": "31",
"title": "Tela Campanha"
}]
}
Para resumir: Preciso gerar um json válido a partir deste array.
O que eu já tentei fazer: usar array_value() para retornar com novas chaves, mas não estou tendo exito na criação de uma função que percorra todos os níveis do array sem problemas.
Se alguém puder me ajudar, agradeço.
Carregando comentários...