Avec le développement continu de la technologie Internet, le protocole de communication lors du processus d'interaction front-end et back-end est progressivement passé du format XML au format JSON. Lors de l'utilisation du format JSON, on constate que parfois des espaces supplémentaires apparaissent. Ces espaces non seulement augmentent la charge de transmission des données, mais causent également des problèmes lors de l'analyse des données JSON. Par conséquent, dans le développement réel, nous devons supprimer les espaces excédentaires dans les données JSON. Cet article explique comment supprimer les espaces supplémentaires dans les données JSON via PHP.
1. Causes des espaces en excès
Avant de comprendre comment supprimer les espaces en excès dans JSON, comprenons d'abord les causes des espaces en excès.
Lors de l'écriture du code, certains programmeurs peuvent, dans l'esprit de « les petits problèmes ne sont pas des problèmes », manquer certains problèmes apparemment insignifiants, tels que des espaces supplémentaires dans JSON. Et ces « petits problèmes » peuvent éventuellement entraîner un mauvais fonctionnement du programme.
Lors de l'interaction front-end et back-end, des espaces supplémentaires peuvent être générés lors de la transmission de données. Par exemple, lorsque vous utilisez la fonction File_get_contents pour obtenir des données JSON, le contenu renvoyé contiendra des espaces supplémentaires.
Parfois, lors de l'écriture de JSON, afin de faciliter la lecture, nous ajouterons manuellement des espaces dans les données JSON. Ces espaces ajoutés manuellement peuvent rendre le format de données JSON non standard, entraînant des espaces redondants.
2. Supprimer les espaces en excès des données JSON
Après avoir compris les raisons des espaces en excès, nous présenterons comment supprimer les espaces en excès des données JSON via PHP.
Méthode 1 : Utilisez la fonction Json_decode
La fonction Json_decode en PHP peut facilement convertir les données JSON en un tableau PHP. Lors de la conversion de données JSON en tableau PHP, vous pouvez supprimer les espaces excédentaires dans les données JSON en définissant le deuxième paramètre sur true. Le code spécifique est le suivant :
$data = '{"name": "小明", "age": 18}'; $data = json_decode($data, true, JSON_UNESCAPED_UNICODE); echo json_encode($data, JSON_UNESCAPED_UNICODE);
Dans le code ci-dessus, nous utilisons la fonction Json_decode pour convertir les données JSON $data en un tableau PHP. Lors de l'utilisation de la fonction Json_encode pour l'encodage, le deuxième paramètre est défini sur JSON_UNESCAPED_UNICODE, ce qui garantit que le chinois ne sera pas encodé. Le principe de l'utilisation de cette méthode pour supprimer les espaces supplémentaires de JSON est que les espaces seront ignorés lorsque JSON est codé.
Méthode 2 : Supprimer manuellement les espaces
En plus d'utiliser la fonction Json_decode, nous pouvons également écrire manuellement du code pour supprimer les espaces en excès dans les données JSON. Le code spécifique est le suivant :
$data = '{"name": "小明", "age": 18}'; $data = preg_replace('/s/', '', $data); echo $data;
Dans le code ci-dessus, nous utilisons la fonction preg_replace. Cette fonction est une fonction de remplacement d'expression régulière. Le premier paramètre est l'expression régulière et le deuxième paramètre est le caractère remplacé. Dans cette fonction, nous utilisons l'expression régulière s pour faire correspondre les espaces dans la chaîne d'entrée. En remplaçant s par un caractère nul, il est possible d'obtenir l'effet de suppression des espaces supplémentaires dans les données JSON.
Résumé :
En résumé, cet article présente les causes des espaces excédentaires dans les données JSON et donne deux méthodes pour supprimer les espaces excédentaires dans les données JSON. Si vous rencontrez le problème des espaces supplémentaires lors de l'utilisation de données JSON, vous pouvez également essayer les deux méthodes ci-dessus. J'espère que cet article pourra aider tout le monde.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!