使用PHP的foreach循环传递CONCATENATED sql

问题描述

我是一个学习者和学生,我正在为其建立一个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,-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'

请告诉我该怎么做。

解决方法

您无需使用代码,而可以使用以下代码。

$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');

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...