您可以在$ wpdb-> prepare中添加重复值。
我有以下SQL
"SELECT
id,
MATCH (content) AGAINST('$search')
FROM table
WHERE MATCH(post_search) AGAINST('$search' IN BOOLEAN MODE)"
到这个
$wpdb->prepare("SELECT
id,
MATCH (content) AGAINST(%s)
FROM table
WHERE MATCH(post_search) AGAINST(%s IN BOOLEAN MODE)", $search_terms)
有没有办法这样做而不做这个
$search_terms1 = $search_terms;
$search_terms2 = $search_terms;
$wpdb->prepare("SELECT
id,
MATCH (content) AGAINST(%s)
FROM table
WHERE MATCH(post_search) AGAINST(%s IN BOOLEAN MODE)", $search_terms1, $search_terms2)
答案 0 :(得分:1)
有没有办法这样做而不这样做(...复制传递的变量)
不使用$wpdb
。 (对于那个问题,也没有PDO
。)你可以坚持传递初始变量,因为它不是通过引用传递的。
答案 1 :(得分:0)
为什么不使用与SQL中相同的内容:
$wpdb->prepare("SELECT
id,
MATCH (content) AGAINST('$search_terms')
FROM table
WHERE MATCH(post_search) AGAINST('$search_terms' IN BOOLEAN MODE)")