Maison > développement back-end > Problème PHP > Comment convertir des tableaux et des objets au format PHP au format JSON

Comment convertir des tableaux et des objets au format PHP au format JSON

PHPz
Libérer: 2023-04-23 09:31:34
original
627 Les gens l'ont consulté

Dans le processus de développement web, il est souvent nécessaire de convertir les données au format PHP au format JSON pour la transmission. En PHP, il existe deux types de données courants qui doivent être convertis au format JSON, à savoir les tableaux et les objets. Cet article expliquera comment convertir des tableaux et des objets en PHP au format JSON, et convertir le format JSON en tableaux ou objets.

1. Convertir le tableau PHP au format JSON

1. Utilisez la fonction json_encode()

En PHP, vous pouvez utiliser la fonction json_encode() pour convertir le tableau au format JSON. Cette fonction reçoit un paramètre, qui est un tableau qui doit être converti au format JSON. Voici un exemple :

$array = array('name' => '张三', 'age' => 20);
$json = json_encode($array);
echo $json;
Copier après la connexion

Après l'exécution, le résultat de sortie est :

{"name":"张三","age":20}
Copier après la connexion
Copier après la connexion
Copier après la connexion

Le code ci-dessus convertit un tableau contenant le nom et l'âge au format JSON.

Par défaut, la fonction json_encode() convertira les noms de clés du tableau en noms d'attributs en JSON. Si vous devez conserver les noms de clés au format JSON, vous pouvez transmettre un paramètre spécial JSON_FORCE_OBJECT à cette fonction lors de son utilisation. Par exemple :

$array = array('name' => '张三', 'age' => 20);
$json = json_encode($array, JSON_FORCE_OBJECT);
echo $json;
Copier après la connexion

Après l'exécution, le résultat de sortie est :

{"name":"张三","age":20}
Copier après la connexion
Copier après la connexion
Copier après la connexion

Comme vous pouvez le voir, le résultat ici est le même que dans l'exemple précédent.

2. Utilisez foreach pour parcourir le tableau

Une autre façon de convertir un tableau PHP au format JSON consiste à utiliser foreach pour parcourir le tableau. Par exemple :

$array = array('name' => '张三', 'age' => 20);
$json = '{';
foreach ($array as $key => $value) {
    $json .= '"' . $key . '":"' . $value . '",';
}
$json = substr($json, 0, -1);
$json .= '}';
echo $json;
Copier après la connexion

Le résultat de sortie est :

{"name":"张三","age":"20"}
Copier après la connexion
Copier après la connexion

Comme vous pouvez le voir, ce code convertit également le tableau au format JSON. Cependant, cette méthode nécessite un épissage manuel des cordes, ce qui est plus fastidieux.

2. Convertir les objets PHP au format JSON

1. Utilisez la fonction json_encode()

Semblable aux tableaux, en PHP, vous pouvez également utiliser la fonction json_encode() pour convertir des objets au format JSON. Voici un exemple :

class Student {
    public $name;
    public $age;
}
$student = new Student();
$student -> name = "张三";
$student -> age = 20;
$json = json_encode($student);
echo $json;
Copier après la connexion

Après la conversion du code, le résultat de sortie est :

{"name":"张三","age":20}
Copier après la connexion
Copier après la connexion
Copier après la connexion

Comme vous pouvez le voir, ce code convertit un objet de type Student au format JSON.

Si vous devez conserver les informations sur le type d'objet au format JSON, vous pouvez lui transmettre un paramètre spécial JSON_UNESCAPED_UNICODE lors de l'utilisation de la fonction json_encode(). Par exemple :

class Student {
    public $name;
    public $age;
}
$student = new Student();
$student -> name = "张三";
$student -> age = 20;
$json = json_encode($student, JSON_UNESCAPED_UNICODE);
echo $json;
Copier après la connexion

Après l'exécution, le résultat de sortie est :

{"name":"张三","age":20,"__className":"Student"}
Copier après la connexion

2. Utilisez la fonction json_encode() et la traversée de tableau

Semblable aux tableaux, en PHP, vous pouvez également utiliser foreach pour parcourir les propriétés de l'objet. Par exemple :

class Student {
    public $name;
    public $age;
}
$student = new Student();
$student -> name = "张三";
$student -> age = 20;
$json = '{';
foreach ($student as $key => $value) {
    $json .= '"' . $key . '":"' . $value . '",';
}
$json = substr($json, 0, -1);
$json .= '}';
echo $json;
Copier après la connexion

Après l'exécution, le résultat de sortie est :

{"name":"张三","age":"20"}
Copier après la connexion
Copier après la connexion

Comme vous pouvez le voir, ce code convertit également l'objet au format JSON. Cependant, cette méthode nécessite également un épissage manuel des cordes, ce qui est plus fastidieux.

3. Convertir JSON en tableau ou objet PHP

Lors du développement Web, il est souvent nécessaire d'obtenir des données au format JSON à partir de la page frontale et de les convertir en tableau ou objet en PHP pour un traitement ultérieur. Voici comment convertir JSON en tableau ou objet en PHP.

1. Utilisez la fonction json_decode() pour convertir JSON en tableau

Vous pouvez utiliser la fonction json_decode() pour convertir les données au format JSON en tableau PHP. Cette fonction a deux paramètres, le premier est la chaîne JSON qui doit être convertie et le second est une valeur booléenne utilisée pour spécifier s'il faut convertir le tableau en objet PHP. La valeur par défaut est false, c'est-à-dire convertie en tableau. . Par exemple :

$json = '{"name":"张三","age":20}';
$array = json_decode($json, true);
var_dump($array);
Copier après la connexion

Après l'exécution, le résultat de sortie est le suivant :

array(2) {
  ["name"]=>
  string(6) "张三"
  ["age"]=>
  int(20)
}
Copier après la connexion

Vous pouvez voir que cette fonction convertit les données au format JSON en un tableau PHP et génère le résultat.

2. Utilisez la fonction json_decode() pour convertir JSON en objet

En plus de la conversion en tableau, vous pouvez utiliser la fonction json_decode() pour convertir les données au format JSON en un objet PHP. Par exemple :

$json = '{"name":"张三","age":20}';
$obj = json_decode($json);
var_dump($obj);
Copier après la connexion

Après l'exécution, le résultat de sortie est le suivant :

class stdClass#1 (2) {
  public $name =>
  string(6) "张三"
  public $age =>
  int(20)
}
Copier après la connexion

Comme vous pouvez le voir, cette fonction convertit les données au format JSON en un objet PHP et génère le résultat.

En résumé, il existe de nombreuses façons de convertir des tableaux et des objets en PHP au format JSON, et vous pouvez choisir de les utiliser en fonction de la situation réelle. Dans le même temps, il existe également des fonctions correspondantes qui peuvent être utilisées lors de l'obtention de données au format JSON à partir de la page frontale et de leur conversion en tableau ou objet en PHP. Maîtriser l'utilisation correcte de ces fonctions est d'une grande importance pour le développement d'applications Web.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal