Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在Redbean中与其他条件一起使用_Php_Sql_Redbean - Fatal编程技术网

Php 在Redbean中与其他条件一起使用

Php 在Redbean中与其他条件一起使用,php,sql,redbean,Php,Sql,Redbean,我试图通过使用“IN”和“=”找到一些bean。我目前正在使用此代码: $ids = array(1,2,3,4); $user = 1; $things = R::find( 'thing', 'id IN ('.R::genSlots($ids).') AND user = ?', array( $ids, $user ) ); 这给了我一些错误: PHP注意:第217行rb.PHP中的数组到字符串转换 致命错误:Uncaught[HY093]-SQLS

我试图通过使用“IN”和“=”找到一些bean。我目前正在使用此代码:

$ids = array(1,2,3,4);
$user = 1;

$things = R::find(
  'thing', 
  'id IN ('.R::genSlots($ids).') AND user = ?',
  array(
    $ids,
    $user
  )
);
这给了我一些错误:

PHP注意:第217行rb.PHP中的数组到字符串转换

致命错误:Uncaught[HY093]-SQLSTATE[HY093]:参数编号无效:绑定变量的数量与第267行rb.php中抛出的令牌数量不匹配

如果我用$id中的一项运行此代码,我只会收到通知,但无论如何都不会得到结果


我假设它试图将$id作为单个变量处理。我遗漏了什么?

不要将$ID添加到数组中,将两者合并到一个数组中,否则这将最终成为一个嵌套数组。

你确定
R::genSlots()
接受数组吗?这不就是它的用途吗?为什么不简单地使用内爆(“,”,$ID)代替R::genSlots?@OIS我可以这样做,但参数化查询通常是一个更好的主意。您需要的是内爆(“,”,数组填充(0,count($id),“?”)