Maison  >  Article  >  développement back-end  >  Comment convertir une chaîne en tableau d'objets en php

Comment convertir une chaîne en tableau d'objets en php

PHPz
PHPzoriginal
2023-04-20 10:11:33495parcourir

En PHP, les chaînes et les tableaux sont des types de données courants. Dans certains cas, nous devons convertir la chaîne en un tableau d'objets pour un meilleur traitement des données. Voici un exemple de code pour vous aider à effectuer cette conversion.

Tout d’abord, voyons comment convertir une chaîne en tableau associatif. Nous pouvons y parvenir en utilisant les fonctions de chaîne explode() et les boucles foreach. explode()foreach 循环来实现这个目标。

假设我们有一个逗号分隔的字符串,每个字段都对应一个键值对,如下所示:

$str = "name:John,age:30,city:New York";

现在,我们将使用以下代码将其转换为关联数组:

$array = array();
$tmp = explode(",",$str);
foreach ($tmp as $value) {
  list($key,$val) = explode(":",$value);
  $array[$key] = $val;
}

在上面的代码中,我们首先使用 explode() 函数将字符串分割成几个字段。然后,我们通过 foreach 循环,将每个字段再进行一次分割,以获取键和值。最后,我们将这些键值对插入到一个新的关联数组中。

现在让我们转向将字符串转换为对象数组的示例。我们可以定义一个自定义对象,并使用 json_decode() 函数将字符串转换为对象。

假设我们有一个 JSON 字符串,它包含三个学生的信息,如下所示:

$str = '[{"name":"John","age":18},{"name":"Mary","age":19},{"name":"Tom","age":20}]';

现在,我们将使用以下代码将其转换为对象数组:

class Student {
  public $name;
  public $age;
}

$array = json_decode($str);
$result = array();

foreach ($array as $obj) {
  $stu = new Student();
  $stu->name = $obj->name;
  $stu->age = $obj->age;
  $result[] = $stu;
}

在上面的代码中,我们首先定义了 Student 类,并定义了两个 public 属性,表示每个学生的姓名和年龄。

然后,我们使用 json_decode() 函数将 JSON 字符串转换为 PHP 对象。接着,我们使用 foreach 循环迭代每个对象,为每个对象创建一个新的 Student

Supposons que nous ayons une chaîne séparée par des virgules avec chaque champ correspondant à une paire clé-valeur comme indiqué ci-dessous :

rrreee

Maintenant, nous allons la convertir en un tableau associatif en utilisant le code suivant : 🎜rrreee🎜Dans le code ci-dessus, nous allons d'abord utilisez la fonction explode() pour diviser la chaîne en plusieurs champs. Nous divisons ensuite chaque champ une fois de plus via une boucle foreach pour obtenir la clé et la valeur. Enfin, nous insérons ces paires clé-valeur dans un nouveau tableau associatif. 🎜🎜Passons maintenant à l'exemple de conversion d'une chaîne en un tableau d'objets. Nous pouvons définir un objet personnalisé et utiliser la fonction json_decode() pour convertir la chaîne en objet. 🎜🎜Supposons que nous ayons une chaîne JSON qui contient les informations de trois étudiants comme indiqué ci-dessous : 🎜rrreee🎜Maintenant, nous allons la convertir en un tableau d'objets en utilisant le code suivant : 🎜rrreee🎜Dans le code ci-dessus, nous d'abord Le Student est définie et deux attributs public sont définis pour représenter le nom et l'âge de chaque élève. 🎜🎜Ensuite, nous utilisons la fonction json_decode() pour convertir la chaîne JSON en un objet PHP. Ensuite, nous utilisons une boucle foreach pour parcourir chaque objet, créant une nouvelle instance Student pour chaque objet et définissant ses propriétés sur les propriétés de l'objet. Enfin, nous insérons chaque objet étudiant dans le nouveau tableau. 🎜🎜En bref, la conversion de chaînes en tableaux d'objets est une technique pratique qui peut nous aider à mieux traiter et gérer les données. À l'aide de l'exemple de code ci-dessus, vous pouvez facilement convertir la chaîne en un tableau associatif ou un tableau d'objets pour s'adapter à différents scénarios. 🎜

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