您的问题在于:
\'exclude\' => \'$user_id,1\',
这将生成字符串“$user\\u id,1”,它不会将用户id插入字符串中。
原因是“$hello”和“$hello”之间的差异,例如。
$hello = 5;
echo \'$hello\'; // prints out $hello
echo "$hello"; // prints out 5
因此,使用双引号而不是单引号可以解决您的问题。
更可靠的方法是使用字符串串联将它们连接在一起,例如:
\'exclude\' => $user_id.\',1\',
的。运算符将两个字符串连接在一起,例如:
echo \'Hello there \'.$firstname.\', my name is \'.$myname;
更通用的方法是使用数组
implode
生成字符串
$excluded_users = array();
$excluded_users[] = 1;
$excluded_users[] = $user_id;
// .. etc
\'exclude\' => implode( \',\' , $excluded_users )
I recommend you read up on magic quotes in basic PHP and string handling