preg匹配变量以不作为字符串处理

时间:2014-06-03 10:24:50

标签: php preg-match

   $custom_sizes = array(); 
   foreach (array('small', 'medium', 'large') as $size) {
          if(preg_match('/size_{$size}/', $custom_sizes['size'])) {
               $price = $custom_sizes['price'];
          }
    }

这里的问题是,在if条件下,我希望获得如下结果:

size_small,size_medium和size_large但未能这样做,因为它将其视为整个字符串。如何正确地做到这一点?

1 个答案:

答案 0 :(得分:0)

使用双引号。

但是,你也可以做替换:

if( preg_match("/size_(?P<size>small|medium|large)/", $input, $match)) {
    $size = $match['size'];
}