145 votes

De retour JSON à partir de PHP JavaScript?

J'ai un script PHP appelé par AJAX de jQuery. Je veux que le script PHP pour renvoyer les données au format JSON pour le javascript. Voici le pseudo-code dans le script PHP:

$json = "{";
foreach($result as $addr)
{
    foreach($addr as $line)
    {
    	$json .= $line . "\n";
    }
    $json .= "\n\n";
}
$json .= "}";

En gros, j'ai besoin des résultats des deux boucles for pour être inséré dans $json.

203voto

Kent Fredric Points 35592

Php dispose d'une fonction intégrée de JSON Serialising fonction.

json_encode

json_encode

Veuillez utiliser si vous le pouvez et ne souffre pas de ne Pas Inventé Ici " syndrome.

86voto

Ólafur Waage Points 40104

Il y a un JSON section dans le PHP de la documentation. Vous aurez besoin de PHP 5.2.0.

Depuis PHP 5.2.0, le JSON extension est fourni et compilé dans PHP par défaut.

Si vous ne le faites pas, voici le PECL bibliothèque que vous pouvez installer.

<?php
    $arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);

    echo json_encode($arr); // {"a":1,"b":2,"c":3,"d":4,"e":5}
?>

13voto

Jukka Dahlbom Points 1219

Habituellement, vous aimeriez aussi avoir une certaine structure de vos données à la fin de réception:

json_encode($result)

Cela permettra de préserver les clés du tableau.

N'oubliez pas que json_encode ne fonctionne que sur les utf8 -données codées.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X