2012-07-31 4 views
0

J'ai une clé spécifique dans le tableau que je voudrais obtenir, mais elle est suffixée par un compteur incrémental.Obtenir les clés de correspondance d'un tableau

Array 
(
    [nombre] => Carlos 
    [apellido] => Delfino 
    [sum1] => Array 
      (
       [0] => Apple 
       [1] => Banana 
       [2] => Liquor 
      ) 
    [sum3] => Array 
      (
       [0] => Grapes 
      ) 
) 

Je prévois de mettre les clés sum (sum1 & de SUM3) sur un nouveau tableau. Un foreach est dans mon esprit cependant je doute que j'aie besoin de la fonction de chaîne de regex ou de PHP pour ceci.

foreach($arr as $k => $v) 
{ 
    //I'm lost here on how to match keys with at least `sum` word on it 
} 

Répondre

1

Ceci vérifie si le mot commence par sum. S'il doit y avoir d'autres clés qui sont avec sum et ont des valeurs non-entières après elles, une expression rationnelle serait nécessaire.

foreach($arr as $k => $v) 
{ 
    if (strpos($k, 'sum') === 0) { 
    // key begins with 'sum' 
    } 
} 

façon Regexp:

foreach($arr as $k => $v) 
{ 
    if (preg_match('/^sum[0-9]+$/', $k)) { 
    // key begins with 'sum' and is followed by an integer 
    } 
} 
Questions connexes