我是一名学习者和学生,我正在制作 aq/a 论坛,因为我必须传递连接的 sql,所以我尝试创建字符串,我必须使用 php 中的 foreach 循环传递我的 sql 语句,但我没有得到结果如预期的,这是我的数组(使用给定的数据库生成 var_dump 结果):array(3) { [0]=> string(0) "" [1]=> string(10) "mrun@g.com" [2]=> string(12) "shorya@g.com" }; <?php foreach ($_array_following as $__name){ $__feed_flist = ""; if($__name){ $__feed_flist .= "'"; $__feed_flist .= $__name; $__feed_flist .= "', "; } } $_selected_names = substr($__feed_flist, 0, -1); echo var_dump($_selected_names); ?> 想要的是这样的:'mrun@g.com', 'shorya@g.com'这样我就可以将它传递给我的sql:$sql = "SELECT * FROM `user` WHERE `user_email` IN ( $_selected_names);";但我得到的只是数组中的最后一个元素:'shorya@g.com'请告诉我应该怎么做。
1 回答
Helenr
TA贡献1780条经验 获得超4个赞
您可以使用下面的代码,而不是执行您的代码。
$arrayEmailList = array('','mrun@g.com','shorya@g.com');
$EmailList = "'".implode("','",array_filter($arrayEmailList))."'";
$Query = "SELECT * FROM `user` WHERE `user_email` IN ( $EmailList);" ;
echo $Query;
//输出是
SELECT * FROM `user` WHERE `user_email` IN ( 'mrun@g.com','shorya@g.com');
- 1 回答
- 0 关注
- 70 浏览
添加回答
举报
0/150
提交
取消