0

取得したい特定のキーが配列にありますが、インクリメンタルカウンターのサフィックスが付いています。

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

sumキー(sum1とsum3)を新しい配列に配置することを計画しています。Aforeachが頭に浮かびますが、これに正規表現またはPHP文字列関数を使用すべきかどうか疑問です。

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

1 に答える 1

1

これは、単語が合計で始まるかどうかをチェックします。合計があり、その後に整数以外の値を持つ他のキーがある場合は、正規表現が必要になります。

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

正規表現の方法:

foreach($arr as $k => $v)
{
  if (preg_match('/^sum[0-9]+$/', $k)) {
     // key begins with 'sum' and is followed by an integer
  }
}
于 2012-07-31T01:54:51.820 に答える