数组中的cakephp查询不起作用

时间:2014-10-15 08:41:57

标签: cakephp

cakephp支持

  

$这 - >命令中─>发现('所有&#39 ;,   阵列('条件' = GT;阵列(' User.id' = GT;阵列(1,2,3,4))));

但是,当我传递变量时:

  

$ arr = array((int)0 =>' 1',(int)1 =>' 128',(int)2 =>&#39 ; 120&#39 ;,     (int)3 => ' 9',(int)4 => ' 122' );

     

$这 - >命令中─>发现('所有&#39 ;,   阵列('条件' = GT;阵列(' User.id' = GT; $ ARR)));

=>这是行不通的。 因为只有数组格式$ arr = array(1,2,3,4,...)=>它有效。

我用

  

implode(',',$ arr)=> $ arr =' 1,128,120,9,122'

=>这是行不通的。 如何转换

  

$ arr = array((int)0 =>' 1',(int)1 =>' 128',(int)2 =>&#39 ; 120&#39 ;,     (int)3 => ' 9',(int)4 => ' 122' ); =>阵列(1,128,120,9,122)?

2 个答案:

答案 0 :(得分:0)

您可以使用array_values()

$arr = array(
    (int) 0 => '1',
    (int) 1 => '128',
    (int) 2 => '120',
    (int) 3 => '9',
    (int) 4 => '122'
);

$this->Order->find('all', array(
    'conditions'=>array(
        'User.id' => array_values($arr)
    )
));

答案 1 :(得分:0)

仅使用array_values($array);,请参阅array_values