English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
L'utilisation courante du JSON est d'envoyer des données au serveur Web/Lire des données à partir du serveur Web et afficher les données dans une page Web.
Ce chapitre présente comment échanger des données JSON entre le client et le serveur PHP.
PHP5.2.0 et versions supérieures ont des extensions JSON intégrées.
PHP dispose des fonctions intégrées suivantes pour traiter le JSON :
Fonction | Description |
---|---|
json_encode() | Retourne la représentation JSON de la valeur |
json_decode() | Analyser une chaîne JSON |
json_last_error() | Retourne l'erreur la plus récente |
Il est possible de convertir un objet PHP en JSON en utilisant la fonction PHP json_encode().
Le fichier donné par json_demo1.php enregistré :
<?php $myObj = new stdClass(); $myObj->name = "Seagull"; $myObj->age =; 22; $myObj->city = "New Delhi"; $myJSON = json_encode($myObj); /* Convertir un objet PHP en chaîne JSON */ echo $myJSON; ?>
Voici un exemple tiré de l'exemple précédent en demandant un fichier PHP (json_demo1.php), puis utiliser JSON.parse() pour convertir la réponse en objet JavaScript :
var httpRequest = new XMLHttpRequest(); httpRequest.onreadystatechange = function() { if (this.readyState === 4 && this.status === 200) { var myObj = JSON.parse(this.responseText); // Convertir une chaîne JSON en Objet document.getElementById("output").innerHTML = myObj.name; } }); httpRequest.open("GET", "json_demo1.php", true); httpRequest.send();Vérifiez le test‹/›
En utilisant la fonction PHP, le tableau PHP est également converti en JSON json_encode().
Le fichier donné par json_demo2.php enregistré :
<?php $myArr = array("Seagull", "Cynthia", "Tarush"); $myJSON = json_encode($myArr); /* Convertir un tableau PHP en chaîne JSON */ echo $myJSON; ?>
Voici un exemple tiré de l'exemple précédent (json_demo2Demander un fichier PHP (.php) et utiliser JSON.parse() pour convertir la réponse en tableau JavaScript :
var httpRequest = new XMLHttpRequest(); httpRequest.onreadystatechange = function() { if (this.readyState === 4 && this.status === 200) { var myArr = JSON.parse(this.responseText); // Convertir une chaîne JSON en tableau document.getElementById("output").innerHTML = myArr[0]; } }); httpRequest.open("GET", "json_demo2.php", true); httpRequest.send();Vérifiez le test‹/›
Une chaîne JSON peut être convertie en objet PHP en utilisant la fonction json_decode().
Le fichier donné est sauvegardé par json_demo.php :
<?php $q = $_REQUEST["q"]; // Obtenir le paramètre q de l'URL $obj = json_decode($q, false); // Convertir une chaîne JSON en objet PHP echo $obj->name."居住在 ".$obj->city."."; ?>
Les exemples suivants convertissent un objet JavaScript en chaîne JSON et l'envoient au serveur (demo_json.php) :
var myObj = {name: "Seagull", age: 22, city: "New Delhi"}; var myJSON = JSON.stringify(myObj); window.location = "json_demo.php?q=" + myJSON;Vérifiez le test‹/›
Il est possible d'utiliser la fonction pour convertir une chaîne JSON en tableau PHP json_decode().
<?php $q = $_REQUEST["q"]; //Obtenir le paramètre q de l'URL $arr = json_decode($q, true); // Convertir une chaîne JSON en tableau PHP echo $arr["name"]."居住在 ".$arr["city"]."."; ?>