Maison  >  Article  >  développement back-end  >  Comment convertir des objets de tableau php et de tableau json entre eux

Comment convertir des objets de tableau php et de tableau json entre eux

PHPz
PHPzoriginal
2023-04-24 15:48:54674parcourir

Lors du développement PHP, nous devons généralement convertir des tableaux en JSON pour les afficher sur le front-end ou pour transférer des données entre différents systèmes. Dans le même temps, nous devons parfois également convertir un tableau PHP en tableau d'objets ou un tableau d'objets en tableau JSON. Cet article expliquera comment réaliser ces opérations de conversion en PHP.

1. Tableau PHP en JSON

En PHP, nous pouvons utiliser la fonction json_encode() pour convertir le tableau en JSON. Cette fonction accepte un tableau comme argument et le convertit en une chaîne au format JSON. Voici un exemple de code :

$fruits = array('apple', 'banana', 'cherry');
echo json_encode($fruits);

Une fois le code exécuté, les résultats suivants seront affichés :

["apple","banana","cherry"]

2. Tableau PHP en tableau d'objets

Parfois, nous devons convertir un tableau PHP en tableau d'objets pour faciliter opérations dans le programme et le traitement. Afin de terminer cette opération de conversion, nous devons d'abord définir un objet vide puis lui ajouter des propriétés et des valeurs. Voici un exemple de code :

$person = array(
   'name' => '张三',
   'age' => 26,
   'country' => '中国'
);

$objPerson = new stdClass();

foreach ($person as $key => $value) {
   $objPerson->$key = $value;
}

echo '<pre class="brush:php;toolbar:false">';
print_r($objPerson);
echo '
';

Une fois le code exécuté, les résultats suivants seront affichés :

stdClass Object
(
   [name] => 张三
   [age] => 26
   [country] => 中国
)

3. Convertir le tableau d'objets en tableau JSON

Dans certains cas, nous devons convertir le tableau d'objets en JSON tableau pour un traitement facile sur le front-end Afficher ou transmettre des données. Afin de compléter cette opération de conversion, nous pouvons utiliser la fonction json_encode() et les techniques de conversion de type. Voici un exemple de code :

$users = array(
   array('name' => '张三', 'age' => 26, 'country' => '中国'),
   array('name' => '李四', 'age' => 28, 'country' => '美国'),
   array('name' => '王五', 'age' => 30, 'country' => '英国')
);

$objUsers = array();

foreach ($users as $user) {
   $objUser = new stdClass();
   foreach ($user as $key => $value) {
      $objUser->$key = $value;
   }
   array_push($objUsers, $objUser);
}

echo json_encode((array)$objUsers);

Une fois le code exécuté, les résultats suivants seront affichés :

[{"name":"张三","age":26,"country":"中国"},{"name":"李四","age":28,"country":"美国"},{"name":"王五","age":30,"country":"英国"}]

4. Convertir un tableau JSON en tableau d'objets

Parfois, nous devons convertir un tableau JSON en tableau d'objets pour faciliter les opérations dans le programme et le traitement. Afin de terminer cette opération de conversion, nous devons utiliser la fonction json_decode() et les techniques de conversion de type. Voici un exemple de code :

$jsonUsers = '[{"name":"张三","age":26,"country":"中国"},{"name":"李四","age":28,"country":"美国"},{"name":"王五","age":30,"country":"英国"}]';

$objUsers = json_decode($jsonUsers);

$arrUsers = array();

foreach ($objUsers as $user) {
   $arrUser = array();
   foreach ($user as $key => $value) {
      $arrUser[$key] = $value;
   }
   array_push($arrUsers, $arrUser);
}

echo '
';
print_r($arrUsers);
echo '
';

Une fois le code exécuté, les résultats suivants seront affichés :

Array
(
   [0] => Array
      (
         [name] => 张三
         [age] => 26
         [country] => 中国
      )

   [1] => Array
      (
         [name] => 李四
         [age] => 28
         [country] => 美国
      )

   [2] => Array
      (
         [name] => 王五
         [age] => 30
         [country] => 英国
      )

)

Ce qui précède est la méthode opérationnelle de conversion d'un tableau PHP en JSON, de conversion d'un tableau PHP en tableau d'objets, de conversion d'un tableau d'objets en Tableau JSON et conversion du tableau JSON en tableau d'objets. J'espère que cela pourra être utile aux développeurs PHP.

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!

Déclaration:
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