Page 1 sur 1

problème avec la fonction preg_match_all

Posté : 27 févr. 2014, 17:00
par jiji55
Bonjours, j'ai un soucis avec mon code,
for($i=1; $i<$n; $i++)
{
$a= htmlentities($tab_csv[$i]);
$b=str_replace ( "," , "%%%%", $a);
$c=str_replace ( """ , "\"", $b);
preg_match_all('/\"[^\"]*\"/'  , $c, $out, PREG_SET_ORDER);
foreach ($out as $key => $Maligne ){
echo $key." ";
var_dump($Maligne);
echo '<br />';
}
j'utlise les str_replace pour un soucis de traitement seulement, mon problème est que le resultat de ceci est :

0 array(1) { [0]=> string(23) ""Variable / Field Name"" }
1 array(1) { [0]=> string(11) ""Form Name"" }
2 array(1) { [0]=> string(16) ""Section Header"" }
0 array(1) { [0]=> string(19) ""0%%%%oui|1%%%%non"" }
0 array(1) { [0]=> string(17) ""<span style="" }
1 array(1) { [0]=> string(13) ""color: teal"" }
...
je ne comprend pas pourquoi cela me donne un tableau de tableau
comment je pourrais faire pour que toutes les valeurs soit dans le meme tableau ?

Re: problème avec la fonction preg_match_all

Posté : 27 févr. 2014, 17:05
par xTG
Tu te créés un autre tableau dans lequel tu viens stocker les valeurs. :)
$tableau = array();
for($i=1; $i<$n; $i++)
{
   $a= htmlentities($tab_csv[$i]);
   $b=str_replace ( "," , "%%%%", $a);
   $c=str_replace ( """ , "\"", $b);
   preg_match_all('/\"[^\"]*\"/'  , $c, $out, PREG_SET_ORDER);
   foreach ($out as $key => $Maligne )
   {
      echo $key." ";
      var_dump($Maligne);
      echo '<br />';
      $tableau[] = $Maligne[0]; // stocker la valeur
   }
}
var_dump($tableau);

Re: problème avec la fonction preg_match_all

Posté : 27 févr. 2014, 17:10
par jiji55
Ah ben oui... , merci beaucoup ! Pb résolu

Re: [RESOLU] problème avec la fonction preg_match_all

Posté : 27 févr. 2014, 17:20
par moogli
Modération :
Puisque ta question est résolue, je l'indique en cliquant sur le bouton "Mettre le sujet en tant que Résolu" pour que les futures personnes qui voudront consulter ce sujet sachent qu'il contient une solution.

Tu peux réaliser cette opération toi-même en cliquant sur le bouton vert situé en haut de la page à côté du titre, si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)