错误讯息:
解析错误:语法错误,C:\ xampp \ htdocs \ index.php中的意外“{” 在第135行
代码:
if(isset($_REQUEST['d'])
{ // LINE 135 IS THIS ONE
$d = $_REQUEST['d'];
if ($d) {
while (preg_match('/\\\/',$d)) $d = preg_replace('/\\\/','/',$d);
while (preg_match('/\/\//',$d)) $d = preg_replace('/\/\//','/',$d);
while (preg_match('/\.\.\//',$d)) $d = preg_replace('/\.\.\//','/',$d);
if ($d[strlen($d)-1] != '/') $d = $d.'/';
if ($d == '/') $d = '';
}
}
答案 0 :(得分:10)
你错过了一个结束括号:
if ( isset($_REQUEST['d'] ) )
答案 1 :(得分:4)
Yan得到了主要答案,但你也错过了第一个正则表达式的反斜杠:
while (preg_match('/\\\/',$d)) $d = preg_replace('/\\\/','/',$d);
^ ^
前两个在模式中插入一个文字反斜杠,而第三个反斜杠实际上是在末尾转义模式分隔符,导致未终止的模式。