【发布时间】:2010-12-10 13:47:27
【问题描述】:
我有以下代码:
protected function safePath($path) {
$path = (string) $path;
$path = preg_replace(
array(
'#[\n\r\t\0]*#im',
'#/(\.){1,}/#i',
'#(\.){2,}#i',
'#(\.){2,}#i',
'#\('.DIRECTORY_SEPARATOR.'){2,}#i'
),
array(
'',
'',
'',
'/'
),
$path
)
;
return rtrim($path,DIRECTORY_SEPARATOR);
}
使用路径执行函数后,出现此错误:
警告:preg_replace() [function.preg-replace]:编译失败:....../myfile.php 中偏移量 3 处的括号不匹配第 534 行
第 534 行是这里标记的:
protected function safePath($path) {
$path = (string) $path;
$path = preg_replace(
array(
'#[\n\r\t\0]*#im',
'#/(\.){1,}/#i',
'#(\.){2,}#i',
'#(\.){2,}#i',
'#\('.DIRECTORY_SEPARATOR.'){2,}#i'
),
array(
'',
'',
'',
'/'
), <---------------- THis is line 534
$path
)
;
return rtrim($path,DIRECTORY_SEPARATOR);
}
对修复此错误有任何帮助吗?谢谢。
【问题讨论】:
标签: php preg-replace