php - mysqli数组到子查询中的mysql?

标签 php mysql mysqli

我有这个选择:

$stmt = $mysqli->prepare("select following from following where user =? and block=0");
$stmt->bind_param('i', $user);
$stmt->execute();
$stmt->bind_result($followers);
$stmt->fetch();
$stmt->close();

我想在另一个 mysql 连接中使用 $followers:

select... from ... where (p.user in (?))

在此?我想将 $followers 变量以格式放置在 mysql 中。 (1,5,7,2)。 有什么想法如何将bind_result $followers转换成这个mysql格式吗?

最佳答案

实现此目的的一种方法是创建另一个字符串变量,并将 $followers 的结果附加到 while 循环中。

我通常采用程序风格工作,并且我假设您的语句将多行返回到 $followers 中:

$sql_in_string = '';   // initialize string variable as blank
while (mysqli_stmt_fetch($stmt)){
    $sql_in_string = $sql_in_string . $followers . "," ; // append value + comma
}
$sql_in_string = rtrim($sql_in_string,",");  // remove the final comma

此时,$sql_in_string 的值应为“1,2,3”格式,然后您可以将该参数绑定(bind)到下一个查询。

关于php - mysqli数组到子查询中的mysql?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50262678/

相关文章:

php - 我需要显示位于另一台服务器上的另一个数据库的值

php - 如何解决我的登录问题?

php - 使用 prepare 命令更新我的表,将值增加 2

php - ZF2 依赖注入(inject)别名和多个实例

java - 通过 ssh 运行 mysql 命令

mysql - 排名行跳过排名 1

php - 这里出了什么问题-MySQLi 和自定义类

php - CodeIgniter从涉及mysql数据库的数据表中删除行

php - htmlentities 正在破坏超链接

php - 如何在Kohana ORM中处理belongs_to关系