代码之家  ›  专栏  ›  技术社区  ›  sdot257

是否可以在codeigniter中返回多个变量/数组?

  •  0
  • sdot257  · 技术社区  · 16 年前

    假设在我的模型中,我有一个查询两个独立表的函数。我需要将结果传递回我的控制器以显示在我的视图中。

    我正在使用MongoDB,但对于任何其他DB都应该是相同的。正常情况下这是可行的。

    $files = $grid->find(array("username" => $profile_id, 
                         "thumbnail" => array('$ne' => true)) );
    
    $return files;
    

    但是,我需要进一步检查用户是否选择了默认照片。

    $getCount = $grid->count(array("username" => $profile_id, 
                         "default" => array('$ne' => true)) );
    

    如果我记错了,我通常会…

    $return array($files, $getCount);
    

    但不起作用。

    3 回复  |  直到 13 年前
        1
  •  2
  •   sdot257    16 年前

    明白了…在我的工作中,我做了以下工作。

    $files['data'] = $grid->find(array("username" => $profile_id, 
                     "thumbnail" => array('$ne' => true)) );
    
    $files['count'] = $grid->count(array("username" => $profile_id, 
                      "default" => array('$ne' => true)) );
    
    $return files;
    

    在我看来,我会相应地操作我的数据。

    echo $files['count'];
    
    foreach( $files['data'] as $obj) {
        ...
    }
    
        2
  •  2
  •   Heems    13 年前

    按照你在原帖中所希望的方式来做,应该是这样的:

    $return array('files'=>$files,'getcount'=>$getcount);

        3
  •  0
  •   Stephen Curran    16 年前

    我把它分成两个独立的模型函数。我认为它比从一个函数中获取并返回两个独立的数据片段更干净。

    推荐文章