Maison  >  Article  >  développement back-end  >  Explication détaillée de la méthode d'implémentation de l'utilisation de str_replace pour remplacer les tableaux multidimensionnels en PHP

Explication détaillée de la méthode d'implémentation de l'utilisation de str_replace pour remplacer les tableaux multidimensionnels en PHP

怪我咯
怪我咯original
2017-07-05 10:21:051508parcourir

Cet article présente principalement la méthode d'implémentation de PHP utilisant str_replace pour remplacer tableau multidimensionnel, et combine des exemples spécifiques pour comparer et analyser la traversée de PHP multidimensionnelle array et conseils d'implémentation et Notes liés aux opérations de remplacement, les amis dans le besoin peuvent se référer à

Cet article décrit la méthode d'implémentation d'utilisation de str_replace pour remplacer les tableaux multidimensionnels en PHP. Partagez-le avec tout le monde pour référence, les détails sont les suivants :

En php, si vous utilisez str_replace pour remplacer la chaîne dans le tableau, vous ne pouvez remplacer que le tableau unidimensionnel S'il s'agit d'un tableau multidimensionnel, il n'est pas possible de remplacer toutes les chaînes. J'ai donc écrit une méthode pour réaliser le remplacement des chaînes de tableaux multidimensionnels

Tout d'abord, testons le remplacement des tableaux en utilisant directement str_replace

$a = array(
'a' => 'bdc#',
'ceshi' => array('c'=>array('f'=>'#'))
);
$a = str_replace('#', 'ccc', $a);
var_dump($a);

Le résultat s'est avéré être. comme suit :

array (size=2)
 'a' => string 'bdcccc' (length=6)
 'ceshi' =>
  array (size=1)
   'c' =>
    array (size=1)
     'f' => string '#' (length=1)

Il a été constaté que seules les chaînes du tableau unidimensionnel ont été remplacées et que les tableaux avec plus de dimensions n'ont pas été remplacés.

La fonction implémente le remplacement de chaîne de tableaux multidimensionnels

$a = array(
'a' => 'bdc#',
'ceshi' => array('c'=>array('f'=>'#'))
);
function strReplace(&$array) {
 $array = str_replace('#', 'ccc', $array);
if (is_array($array)) {
  foreach ($array as $key => $val) {
    if (is_array($val)) {
      strReplace($array[$key]);
    }
  }
}
}
strReplace($a);
var_dump($a);

Le résultat est le suivant :

array (size=2)
 'a' => string 'bdcccc' (length=6)
 'ceshi' =>
  array (size=1)
   'c' =>
    array (size=1)
     'f' => string 'ccc' (length=3)

Il s'avère que le remplacement de chaîne de tableaux multidimensionnels arrays est implémenté

La fonction strReplace transmet l'adresse du tableau et remplace la chaîne de manière récursive. Bien sûr, ce n'est qu'une méthode très simple, il existe de nombreuses façons de la mettre en œuvre, tout comme celle-ci !

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