Habituellement, en PHP, le traitement des objets dans des tableaux demande un certain effort.
Mais ici aujourd'hui, je vais vous expliquer une technique noire si simple pour résoudre ce problème.
<?php /** * Created by PhpStorm. * User: zrj * Date: 17-10-20 * Time: 下午8:08 */ declare(strict_types=1);//开启强类型模式 class Person { public $name; public $age; public function __construct(string $name,int $age) { $this->name = $name; $this->age = $age; } } $jack = new Person('Jack', 18); echo print_r($jack, true); echo "<p>"; //对象转数组 $jack = json_decode(json_encode($jack), true); echo print_r($jack, true);
Regardons les résultats :
Person Object ( [name] => Jack [age] => 18 ) Array ( [name] => Jack [age] => 18 )
Analyse des idées :
Mettez d’abord l’objet Effectuer le traitement json_encode dans une chaîne json.
Exécutez json_decode sur la chaîne json convertie.
json_decode(json_encode($obj),true);
Résumé :
Avantages : Simple et rapide.
Inconvénients : Consommera le double de la mémoire.
Corriger Obtenir la posture :
L'objet lui-même occupe une petite quantité de mémoire et peut être utilisé directement.
Lorsque l'objet lui-même occupe une grande quantité de mémoire (comme des milliers d'enregistrements formant un objet d'ensemble de données), occuper deux fois la mémoire peut entraîner le PHP En raison de la limite de mémoire, une exception s'est produite.
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!