Fonction PHP JSON_DECODE

Fonction PHP JSON_DECODE
PHP a deux fonctions intégrées pour travailler avec les données JSON. Ceux-ci sont json_encode () et JSON_DECODE () les fonctions. La fonction json_encode () est utilisée pour coder les données JSON et la fonction JSON_DECODE () est utilisée pour décoder les données JSON codées. Cette fonction crée un objet PHP à partir d'un objet JSON. Les différentes utilisations de la fonction JSON_DECODE () sont affichées dans ce tutoriel.

Syntaxe:
JSON_DECD mixtee (String $ json, bool $ associative = null, int $ de profondeur = 512, int $ drapeau = 0)

Cette fonction a quatre arguments. Le premier argument est obligatoire et les autres arguments sont facultatifs. Les objectifs de ces arguments sont décrits dans ce qui suit:

  • $ JSON: il contient les données JSON qui sont décodées et ne prend en charge que l'UTF-8.
  • $ associatif: il contient une valeur booléenne. Si la valeur de cet argument est définie sur true, la fonction renvoie un tableau associatif de l'objet JSON. Si la valeur de cet argument est définie sur False, la fonction renvoie un objet.
  • $ profondeur: il est utilisé pour définir la profondeur imbriquée de la structure qui est décodée. La valeur de cet argument se situe entre 1 et 2147483647.
  • $ Flag: il contient le massasque de json_bigint_as_string, json_invalid_utf8_ignore, json_invalid_utf8_substitute, json_object_as_array, json_throw_on_error.

La valeur JSON codée du type PHP est renvoyée par cette fonction si les données codées se trouvent dans la profondeur imbriquée. Sinon, la fonction renvoie nul.

Différents exemples de la fonction json_encode ()

Les différentes utilisations de la fonction json_encode () sont présentées dans cette partie du tutoriel à l'aide de plusieurs exemples.

Exemple 1: Convertir les données JSON simples en un tableau PHP

Créez un fichier PHP avec le script suivant qui convertit l'objet JSON en un objet PHP et un tableau PHP à l'aide de la fonction JSON_DECODE0. Lorsque la fonction json_decode () est utilisée avec un argument, l'objet JSON est converti en un objet PHP. Lorsque la fonction json_decode () est utilisée avec les deux premiers arguments, l'objet JSON est converti en un tableau PHP. Un objet JSON avec des données JSON simples de cinq propriétés est utilisée dans cet exemple.

// Déclarer une simple chaîne JSON
$ jSondata = '"01": "Book", "02": "Pen", "03": "Crayon", "04": "RULAL", "05": "Paper"';
// décode les données JSON dans un objet PHP
écho "Les données JSON décodées comme objet:
"
print_r (json_decode ($ jSondata));
// décode les données JSON dans un tableau PHP
écho "
Les données JSON décodées en tant que tableau associatif:
"
print_r (json_decode ($ jSondata, true));
?>

Sortir:

La sortie suivante apparaît après l'exécution du script précédent:

Exemple 2: Imprimez les noms et valeurs de la propriété JSON

Créez un fichier PHP avec le script suivant qui convertit l'objet JSON en un tableau PHP à l'aide de la fonction JSON_DECODE0. Un objet JSON avec des données JSON simples de cinq propriétés est utilisée dans cet exemple. Ensuite, le «pour chaque”Loop est utilisé pour lire et imprimer les clés et les valeurs du tableau PHP.

// Déclarer une simple chaîne JSON
$ ProductTypes = '"T01": "HDD", "T02": "Monitor", "T03": "Mouse", "T04": "Imprimante", "T05": "Keyboard"';
// décode les données JSON dans un tableau PHP
$ phpArray = json_decode ($ productTypes, true);
écho " ID Nom du produit
"
// imprime les éléments du tableau associatif à l'aide de la boucle
foreach ($ phparray as $ index => $ valeur)

Index Echo $."".$ valeur."
"

?>

Sortir:

La sortie suivante apparaît après l'exécution du script précédent:

Exemple 3: Recherchez la propriété JSON particulière

Créez un fichier PHP avec le script suivant qui convertit l'objet JSON en un tableau PHP et la valeur d'ID particulière sera recherchée dans le tableau. Si la valeur existe dans le tableau, les autres valeurs correspondantes sont imprimées. Ici, la valeur de l'ID de recherche est tirée du paramètre URL.

// déclare un objet JSON de plus d'une profondeur
$ clientData = '[
"Id": "056345", "nom": "Mira Hossain", "Email": "Mira @ gmail.com "," contact_no ":" + 8801954532367 ",
"Id": "056335", "nom": "Mohammed Abir", "Email": "Abir @ gmail.com "," contact_no ":" + 8801858722209 ",
"Id": "056387", "nom": "alif chowdhury", "e-mail": "alif @ gmail.com "," contact_no ":" + 8801700785321 ",
"Id": "056391", "nom": "Nipa Roy", "Email": "Nipa @ gmail.com "," contact_no ":" + 880180006342 ",
"Id": "056395", "nom": "Anam Ali", "Email": "Ali @ gmail.com "," contact_no ":" + 880159126543 "
] ';
// Créez le tableau PHP des données JSON
$ custArray = json_decode ($ clientData, true);
// Vérifiez que l'ID de recherche est donné dans l'URL ou non
if (isset ($ _ get ['src'])))

// Lire l'ID de recherche de l'URL
$ SearchId = $ _get ['src'];
$ trouvé = false;
// imprime les informations client de l'ID particulier si il existe dans le tableau
pour ($ index = 0; $ index < count($custArray); $index++)
if ($ custArray [$ index] ["id"] == $ SearchId)
écho " Détails du client:
"
Echo "Nom:".$ custarray [$ index] ["name"]."
"
Echo "Email:".$ custarray [$ index] ["e-mail"]."
"
Echo "N ° de contact:".$ custarray [$ index] ["Contact_No"]."
"
$ Found = true;
casser;


if ($ trouvé == false)
Echo "L'ID client n'existe pas."

autre
Echo "L'ID de recherche n'est pas donné."
?>

Sortir:

La sortie suivante apparaît après l'exécution du script précédent si aucune valeur d'ID n'est fournie dans l'URL:

La sortie suivante apparaît après l'exécution du script précédent si la valeur d'ID fournie dans l'URL existe dans le tableau PHP généré à partir de l'objet JSON:

La sortie suivante apparaît après l'exécution du script précédent si la valeur d'ID fournie dans l'URL n'existe pas dans le tableau PHP généré à partir de l'objet JSON:

Exemple 4: générer une erreur pour le mauvais objet JSON

Créez un fichier PHP avec le script suivant qui affiche une erreur au moment de la conversion de l'objet JSON en un objet PHP si l'objet JSON contient une erreur. L'objet JSON qui est utilisé dans cet exemple contient une erreur dans la valeur de la deuxième propriété. Le double devis («) est manquant pour la valeur de la propriété,«Stylo".

// Déclarer une simple chaîne JSON
$ JSondata = '"01": "Book", "02": Pen "," 03 ":" Crayon "," 04 ":" RULAL "," 05 ":" Paper "';
// décode les données JSON dans un objet PHP
écho "Les données JSON décodées comme objet:
"
print_r (json_decode ($ jSondata));
// imprime le NO d'erreur et le message d'erreur s'il existe
Echo "Erreur non: ".json_last_error ()."
"."Message d'erreur: ".json_last_error_msg ().""
?>
?>

Sortir:

La sortie suivante apparaît après l'exécution du script précédent:

Conclusion

Les différentes façons d'analyser les données JSON à l'aide de la fonction JSON_DECODE () sont expliquées dans ce tutoriel en utilisant des exemples simples. Nous espérons que le but de l'utilisation de la fonction JSON_DECODE () sera effacé pour les utilisateurs de PHP après avoir lu ce tutoriel.