Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

120
Visualizações
Cambiar el nombre de las subclaves JSON usando PHP

Estoy tratando de ayudar a un formato de estructura JSON de un proyecto existente, y el objetivo es cambiar el nombre de algunas subclaves, no el valor. El formato JSON así

 { "table-name": "Kiwi", "created-on": "November 20, 2021", "token": "lsUVozOB2TxhvMv", "icons": "default", "links": "default", "extra": "default", "mode": "Private", "collaborators": [], "columns": { "Name": { "type": "text", "extra": "" }, "Info": { "type": "longtext", "extra": "" }, "Status": { "type": "droplist", "extra": { "fr": "Pending", "sc": "On-going", "th": "Completed", "fo": "Cancelled" } } }, "data": [{ "Name": "Team Reports", "Info": "Submitting marketing materials reports", "Status": "Completed" }, { "Name": "Fabia HR", "Info": "Brian asking for a report", "Status": "Pending" }, { "Name": "Fabia", "Info": "Meeting with CEO @cafe 9:00", "Status": "Cancelled" } ] }

Y estamos buscando en las columns para renombrar el Name en Task y aún así mantener el otro. Después de usar array push y segmentar las claves, obtengo 0 como claves y "Tarea como subclaves como

 "0":{ "Task":{ "type":"text", "extra":"" },

El código se ve así. Comparta sus soluciones en su tiempo libre, gracias de antemano, realmente aprecio cualquier atención. Novato total aquí 🖐 PHP:

 $file = file.json; $jsn = file_get_contents($file); $data = json_decode($jsn, true); //get name data array $sub_data = $data['columns']['Name']; $new_rename = array( "Task" => $sub_data; ); array_push($data['columns'],$new_rename); //now delete old "Name"; array_slice($data['columns'],'Name') //save stuff $jsn = json_encode($data); file_put_contents($file,$jsn);
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Dado que está trabajando con objetos JSON y, por lo tanto, matrices asociativas de PHP (en lugar de indexadas numéricamente), todo lo que necesita hacer es establecer la nueva propiedad y desactivar la anterior.

 $data["columns"]["Task"] = $data["columns"]["Name"]; unset($data["columns"]["Name"]);

Demostración ~ https://3v4l.org/7pBpZ

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda