Maison >développement back-end >tutoriel php >Comment accéder aux propriétés des objets imbriqués et des tableaux en PHP ?
Accès aux propriétés d'un objet en PHP
Lorsque vous essayez d'accéder à la valeur d'une variable dans une sortie print_r(), il est important de comprendre comment pour construire l'expression permettant de récupérer cette valeur dans le code. Pour les types de données simples, vous préfixez le nom de la variable avec $ (par exemple, $variable). Cependant, pour les types de données composés tels que les objets et les tableaux, vous devez combiner $ avec des accesseurs spécifiques.
Accès aux objets
Pour accéder aux propriétés d'un objet (par exemple, $ object->propriété), vous utilisez le "->" opérateur. La sortie de débogage que vous avez mentionnée montre une structure de données complexe :
field_image (Object) stdClass handler (Object) views_handler_field_field view (Object) view result (Array, 2 elements) 0 (Object) stdClass _field_data (Array, 1 element) nid (Array, 2 elements) entity (Object) stdClass field_image (Array, 1 element) und (Array, 1 element) 0 (Array, 11 elements) filename (String, 23 characters ) FILENAME.jpg
Accès aux tableaux
Pour accéder aux éléments d'un tableau (par exemple, $array[key]), vous utilisez des crochets []. Dans l'exemple que vous avez fourni, "result" est un tableau comportant deux éléments. Accéder au premier élément en utilisant $view->result[0] vous donne un objet avec une propriété "_field_data". Cette propriété est un tableau avec un élément, "nid".
Combinaison des accesseurs
Pour accéder au nom de fichier de l'image (FILENAME.jpg), vous devez combiner les accesseurs :
$field_image->handler->view->result[0]->_field_data['nid']['entity']->field_image['und'][0]['filename']
Cette expression représente les étapes suivantes :
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!