PHP-MySql数组
我是PHP新手,解决这个问题时遇到了困难:我有一个数组(PHP),看起来像这样PHP-MySql数组,php,android,mysql,arrays,eclipse,Php,Android,Mysql,Arrays,Eclipse,我是PHP新手,解决这个问题时遇到了困难:我有一个数组(PHP),看起来像这样 "tandemArray":["English", "German"] 正如在我的LogCat(Eclipse)中所看到的,我将数组返回到Android客户端并将其记录在Eclipse中。我想用类似以下的字符串查询数据库: $myQuery = "SELECT id FROM my_users WHERE // some code AN
"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) . '")';
我将非常感谢任何帮助 正确的代码由ChrisForrence提供:
$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查询中这通常更容易破译。例如,“英语”、“德语”如果需要双引号,则需要进行调整。代码在所示方法中使用了不匹配的引号和双引号;尝试将“和”反转为如下所示:
$myQuery = "SELECT id"
. " FROM my_users"
. " WHERE 1=1" // using an actual WHERE-clause
. " AND Tandem_Tongue IN ('" . implode("','", $tandemArray) . "')";
你到底想做什么?好吧,在你展示的方法中,你有不匹配的引号和双引号;试着将“and”倒过来:
和Tandem_舌头插入(“.”。内爆(“,”,$tandemArray)。“)";代码>谢谢!!现在成功了!我会选择你的答案作为正确答案,但这是一个评论,我不知道我的答案与ChrisForence的有什么不同,因为我没有用一个引号来开始数组。我认为内爆声明已经为你揭开了一个序幕;没有!不过,如果它能做到这一点,那就太好了,您可以编写一个帮助器方法来为您解决这个问题