【问题标题】:Zend Pagination changing value injectionZend Pagination 改变值注入
【发布时间】:2012-04-12 17:08:29
【问题描述】:

在 Zend_Paginator 中

我正在尝试在数据库结果之后更改分页器对象的值之一

我遍历分页器 - 获取项目然后发送排名

但是这并没有延续到视图分页和排名为 NULL

    // Loop through the results and get the users Rank
    foreach ($paginator as $k => $v) {

        $rowSet       = $paginator->getItem($i);
        $rowSet->rank = $table->getRanking($rowSet->score);

        echo $rowSet->first_name . '<br />';
        echo $rowSet->rank . '<br />';

        $i++;
    }

    $this->view->paginator = $paginator;

【问题讨论】:

  • getRanking 函数是否返回 null? $rowSet->score 的值是多少?

标签: php zend-framework pagination


【解决方案1】:

只需像这样使用 Paginator 迭代器:

foreach ( $paginator as &$item )
{
    $item->rank = $table->getRanking($item->score);
}

请注意 &$item,它使 $item 成为对实际 $item 的引用,而不是 $item 的副本。

【讨论】:

    【解决方案2】:

    这确实不是您应该使用 foreach 循环的方式。你甚至没有在 foreach 中使用 $k 或 $v。 link text

    【讨论】:

    • 问题是关于 Paginator 而不是如何构造 foreach 循环。
    • @IanWarner 对,但你的代码被破坏了,我指出了它。 3年前哈哈。当然,您有权发表自己的意见。
    猜你喜欢
    • 2021-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-12
    • 1970-01-01
    • 2013-08-23
    相关资源
    最近更新 更多