Maison >développement back-end >tutoriel php >Comment définir dynamiquement des données de tableau imbriquées à l'aide d'un chemin de chaîne en PHP ?

Comment définir dynamiquement des données de tableau imbriquées à l'aide d'un chemin de chaîne en PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-11 09:48:10478parcourir

How to Dynamically Set Nested Array Data Using a String Path in PHP?

Utilisation d'un chemin de chaîne pour définir des données de tableau imbriquées

Question :
Comment puis-je définir dynamiquement des données imbriquées données du tableau en utilisant un chemin de chaîne, tel que "cars.honda.civic" vers $data'cars'['civic'] sans en s'appuyant sur eval() ?

Réponse :
L'opérateur de référence (&) permet ce paramètre dynamique :

$temp = &$data;
foreach ($exploded_path as $key) {
    $temp = &$temp[$key];
}
$temp = $value;
unset($temp);

En utilisant cette approche, vous peut définir efficacement les données du tableau imbriqué sans avoir besoin d'eval(). Voici comment cela fonctionne :

  • $temp est initialisé comme référence au tableau racine ($data).
  • La boucle parcourt le chemin éclaté, mettant à jour $temp pour référencer successivement les tableaux existants.
  • $temp reçoit finalement la valeur souhaitée $value.
  • unset($temp) efface la référence, empêchant effets secondaires involontaires.

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
Article précédent:PHP HyperF -> Firebase JWTArticle suivant:PHP HyperF -> Firebase JWT