Dans les applications PHP, nous traitons des données dans divers formats tels que des chaînes, des tableaux, des objets, etc... Dans les applications en temps réel, nous pouvons avoir besoin de lire le tableau de résultats de l'objet PHP sous forme associative pour obtenir le sortie souhaitée.
Nous allons donc discuter ici de la façon de convertir un objet php en tableau associatif en PHP.
Expliquons que sont les objets et les tableaux associatifs en PHP ? Les objets sont des instances de classes, ce qui signifie que vous pouvez créer de nombreux objets à partir d'une classe. C'est juste un échantillon d'une classe avec de la mémoire allouée. D’un autre côté, un tableau constitué de chaînes comme indices est appelé tableau associatif. Il contient une paire clé-valeur, où les valeurs sont associées à leurs clés respectives.
Parlons maintenant des différentes façons de convertir un objet en tableau.
Initialement, la fonction json_encode() renvoie la chaîne codée JSON de la valeur donnée. La fonction json_decode() le convertit en tableau PHP.
<?php class student { public function __construct($firstname, $lastname) { $this->firstname = $firstname; $this->lastname = $lastname; } } $myObj = new student("Alex", "Stokes"); echo "Before conversion:".'</br>'; var_dump($myObj); $myArray = json_decode(json_encode($myObj), true); echo "After conversion:".'</br>'; var_dump($myArray); ?>
Before conversion: object(student)#1 (2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" } After conversion: array(2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }
Ici, nous avons créé une classe Student et déclaré une fonction __construct() dans la classe qui est exécutée lors de la création de l'objet. Le constructeur reçoit des paramètres qui sont fournis ultérieurement lors de la création de l'objet à l'aide du nouveau mot-clé. Dans la première expression var_dump(), nous imprimons l'objet, mais dans le second cas, nous convertissons l'objet en tableau à l'aide des techniques json_decode et json_encode.
La conversion de type est une méthode d'utilisation d'une variable de type de données dans un type de données différent, il s'agit simplement d'une conversion exacte du type de données.
<?php class bag { public function __construct( $item1, $item2, $item3){ $this->item1 = $item1; $this->item2 =$item2; $this->item3 = $item3; } } $myBag = new bag("Books", "Ball", "Pens"); echo "Before conversion :".'</br>'; var_dump($myBag); $myBagArray = (array)$myBag; echo "After conversion :".'</br>'; var_dump($myBagArray); ?>
Before conversion : object(bag)#1 (3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" } After conversion: array(3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }
Ici, nous avons créé une classe appelée "bag" et à l'intérieur de cette classe, nous avons déclaré une fonction __construct() qui est exécutée lors de la création de l'objet. Le constructeur reçoit des paramètres qui sont fournis lors de la création d'un objet à l'aide du mot-clé new. Dans la première expression var_dump(), nous imprimons simplement l'objet, mais dans le second cas, nous utilisons une procédure d'indication de type pour convertir l'objet en tableau.
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!