0
我使用ereg維護了一些代碼,並將遷移到preg_match(不要忘記分隔符),但它破壞了我的函數。從ereg遷移到preg_match:複製一個文件,直到一個模式重複自己X次
這是我原來的功能,這需要一個文件,並創建僅由#線後停止裁剪副本遇到6次:
function createStrippedFile($path1, $path2)
{
$lines = file($path1);
$handle = fopen($path2,"w");
// 6
$index = 0;
foreach ($lines as $line)
{
$line = trim($line);
if ($index != 7)
fwrite($handle,$line."\r\n");
if (ereg("^[#]+$",$line) !== FALSE)
++$index;
}
fwrite($handle,"END OF DOC\r\n");
fclose($handle);
}
在這段代碼我改變:
if (ereg("^[#]+$",$line) !== FALSE)
通過
if (preg_match('/^[#]+$/',$line) !== FALSE)
,但現在它不是裁剪了。在轉換過程中有什麼我錯過了嗎? PS:如果有人知道更好的方法來做我想做的事情,他也可以寫出來。
如果我檢查了'(ereg($ pattern,$ string)=== FALSE)',我可以用'(!preg_match($ preg_pattern,string))'替換它。 – Eldros 2011-10-17 13:43:36