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

223
Visualizações
¿Por qué json_encode devuelve un objeto en lugar de una cadena?

PHP json_encode

Devuelve una cadena que contiene la representación JSON del valor proporcionado. php.net

pero devuelve un objeto JavaScript, no una cadena Json:

 <script> var app = <?php echo json_encode($array); ?>; alert(app.name) </script>
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

pero devuelve un objeto JavaScript, no una cadena Json:

El contexto importa, considera este código:

 <?php $array = ['name' => 'John Doe']; $string = json_encode($array); var_dump($string);

Ejecutar eso produce:

 $ php index.php string(19) "{"name":"John Doe"}"

string(19) significa que la variable es una cadena de 19 caracteres. El hecho de que la cadena pueda ser interpretada por js como un objeto es irrelevante aquí, para php está produciendo una cadena.

about 4 years ago · Juan Pablo Isaza Relatório

0

pero devuelve un objeto JavaScript, no una cadena Json

Te saltas algunos pasos aquí:

  1. json_encode devuelve una cadena en PHP
  2. Esa cadena se le da a la declaración de echo
  3. Todo lo que sale, se pasa como la página HTML para que el navegador lo interprete.
  4. El navegador usa su motor JavaScript para analizar los scripts que forman parte de la página; ese JSON se analiza como cualquier otro objeto literal que pueda aparecer en el script.
  5. Para el motor de JavaScript, esta parte del script no es una cadena, sino un objeto literal.

Puede ser útil reescribir el script PHP en algo que sea equivalente:

 echo " <script> var app = " . json_encode($array) . "; alert(app.name) </script>";

Entonces, ahora está claro que PHP envía una cadena, que representa un JavaScript válido, encerrado en una etiqueta <script> . El JSON es solo una parte de esa cadena larga, que luego el navegador analizará, y donde un motor de JavaScript analiza la parte de JavaScript.

about 4 years ago · Juan Pablo Isaza 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