我在 PHP 中有以下数组:
$item_array = array("facebook/1377445751.jpg_t","twitter/1377446022.gif_s","flickr/1377531219.png_w","flickr/1377531219.jpg_t_w");
我正在遍历这个数组,删除与以下正则表达式不匹配的值:
(facebook|twitter|flickr)\/(\d{10})\.(jpg|png|gif)_(t_w|t|s|w)
这是我的代码:
foreach($item_array as $key => $item) {
if(!preg_match('/(facebook|twitter|flickr)\/(\d{10})\.(jpg|png|gif)_(t_w|t|s|w)/', $item)) {
unset($item_array[$key]);
}
}
但是,当我使用var_dump()
on 时$item_array
,我得到一个空数组。由于preg_match
不匹配任何数组值,我的印象是问题出在那儿,即使我已经用 RegExr 对其进行了多次测试。
关于我可能出错的地方有什么想法吗?