Php 多数组迭代

Php 多数组迭代,php,arrays,Php,Arrays,嗨,我有一个功能是: public function getpopularAction() { $businessReviewMapper = new Application_Model_Mapper_BusinessReviewsMapper(); $result = $businessReviewMapper->getTotalPopular(); for ($i = 0; $i < count($result); $i++) {

嗨,我有一个功能是:

public function getpopularAction()
{
    $businessReviewMapper = new Application_Model_Mapper_BusinessReviewsMapper();
    $result = $businessReviewMapper->getTotalPopular();

    for ($i = 0; $i < count($result); $i++)
    {
        $rotd[$i] = $businessReviewMapper->getROTD($result[$i]['review_id']);     

        for ($j = 0; $j < count($rotd); $j++)
        {
            $rotd[$j]['u_img'] = $this->view->getLoginUserImage(
                $rotd[$j]['social_id'], $rotd[$j]['login_type'], null, null, large
            );
        }
     }

     print_r($rotd); 
     exit;
}

我不知道问题出在哪里,但u_img没有正确获取,不确定数组循环是否正确执行。

不确定内部循环的用途。如果您试图检索与每个rotd对应的loginuserimage,则需要执行以下操作:

    for ($i = 0; $i < count($result); $i++)
    {
       $rotd[$i] = $businessReviewMapper->getROTD($result[$i]['review_id']);     

       $rotd[$i]['u_img'] = $this->view->getLoginUserImage(
            $rotd[$i]['social_id'],$rotd[$i]['login_type'],null,null,large);
    }
for($i=0;$igetROTD($result[$i]['review_id']);
$rotd[$i]['u_img']=$this->view->getLoginUserImage(
$rotd[$i]['social\u id'],$rotd[$i]['login\u type'],null,null,large);
}

通过查看输出,您的结果位于数组的第二层,这意味着您应该在

$rotd[$i]['social_id'],$rotd[$i]['login_type'] 


将PHP错误警告和通知启用到最高级别。然后跟踪PHP错误日志记录(或输出,如果您已启用它)。从代码看,在读取
$rotd[$j]['social\u id']
$rotd[$j]['login\u type']
时,似乎有一个未定义的索引。在这里的逻辑中执行您自己的错误检查也可能有用(“image\u not\u found.png”看起来像一条“错误”消息)发布相关代码,尤其是getLoginUserImage和getROTD。getROTD函数是否返回具有正确值的数组?
$rotd[$i]['social_id'],$rotd[$i]['login_type'] 
$rotd[$i][0]['social_id'],$rotd[$i][0]['login_type']