我是PHP的新手,在解决这个问题时遇到了困难:我有一个数组(PHP),看起来像这个
"tandemArray":["English", "German"]
正如在我的LogCat(Eclipse,我将数组返回到Android客户端并将其记录在Eclipse中)中所看到的那样。我想用类似于的字符串查询数据库
$myQuery = "SELECT id
FROM my_users
WHERE // some code
AND Tandem_Tongue IN ("English", "German"); // The tandemArray
我尝试过不同的方法,但都没有成功。例如:
$myQuery = "SELECT id
FROM my_users
WHERE // some code
AND Tandem_Tongue IN ("' . implode('","', $tandemArray) . '")';
如果有任何帮助,我将不胜感激!
代码在显示的方法中使用了不匹配的引号和双引号;尝试将"answers"反转为这样:
$myQuery = "SELECT id"
. " FROM my_users"
. " WHERE 1=1" // using an actual WHERE-clause
. " AND Tandem_Tongue IN ('" . implode("','", $tandemArray) . "')";
正确的代码由ChrisForence:提供
$myQuery = "SELECT id
FROM my_users
WHERE // some code
AND Tandem_Tongue IN ('" . implode("','", $tandemArray) . "')';
问题在于引号不匹配。
不是肯定的,但我认为您的示例中的引号和句点不匹配。应该更像:
$myQuery = "SELECT id
FROM my_users
WHERE // some code
AND Tandem_Tongue IN (".implode("','",$tandemArray).")';
我只是在数组元素周围使用了单引号,因为在mysql查询中,这通常更容易解读。英语,德语如果你需要双引号,你需要调整一下。