1
目標是找到諸如<!-- content:start -->some content here<!-- content:stop -->
這樣的集合並處理每個集合以將其放入數組中,但每次找到沒有匹配和回聲時我的die語句不打印任何匹配。 注意:開始和結束標記之間的內容通常跨越多行。我在做什麼錯誤preg_match_all?
這是當前正在執行的函數。
function boom($data) {
$number = preg_match_all("/(<!-- ([\w]+):start -->)(.*?)(<!-- \\2:stop -->)/", $data, $matches, PREG_SET_ORDER);
if ($number == 0) $data['content'] = $data;
//else unset($data);
foreach ($matches as $item) print_r($item)."\n\n"; // $data[$item[2]] = explode("<!-- breaker -->", $item[3]);
die("<code>".str_replace("\n", "<br />", htmlentities($data))."</code>");
return $data;
}
不是整個部分'(<! - ([\ w] +):start - >)'認爲第一個匹配和第二個匹配的內部([\ w] +) ? – animuson 2010-02-07 08:36:54
添加了正確的模式 – 2010-02-07 08:39:57
嗯,一封信使所有區別,謝謝! – animuson 2010-02-07 08:47:06