【发布时间】:2016-12-09 19:57:09
【问题描述】:
在我的查询中,我有:
$search .= "and title REGEXP '[[:<:]]$q[[:>:]]' ";
这会在 Apache 错误日志中产生以下错误:
PHP Parse error: syntax error, unexpected '[', expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)
我尝试在它周围加上 {},但这也没有用。
谢谢。
【问题讨论】:
-
用反斜杠转义美元符号。 PHP 试图将其解释为一个变量。或者更好的是,使用准备好的语句,您不必担心这些事情。
-
准备好的语句在这里是必不可少的。这是在要求严重的问题。
-
@tadman,严重问题是什么意思?
-
我在实际查询之前使用此代码解决了这个问题: $regexpVariable = "[[:<:>:]]";
-
@NestMan 看看如果你犯了这么大的错误,tool like this 可以对你的网站做些什么。这不是一个很好的清单。