【问题标题】:Phalcon php implode(): Invalid arguments passed inPhalcon php implode():传入的参数无效
【发布时间】:2016-11-15 11:20:02
【问题描述】:

我正在编码分页。

动作逻辑:

$page = 0; 
$pages = 5; 
$language_id = 2; 

$links = array();

for ($i = 1; $i <= $pages; $i++) {
    if ($i == $page) {
        $links = $i;
    } else {
        $link = $this->getBaseUrl() . '/v2/translate/' . 'lid/' . $language_id . '/page/' . $i;
        $links[] = '<a href="' . $link . '">' . $i . '</a>';

    }
}

$this->view->setVar('links', $links);

查看逻辑

<div style="margin-top: 20px; font-size: 18px">
    Pages: <?= implode(' ', $links) ?>
</div>

【问题讨论】:

  • 您是否分配了 $links 来查看?可能不会……
  • @nospor 是的,我指定
  • 因此在视图中显示该值以查看其中的内容,因为在某些时候您会分配整数而不是数组....` $links = $i;`

标签: php phalcon


【解决方案1】:

问题不在于 Phalcon,而是你的一个愚蠢的错误 :)

检查以下if 声明:

if ($i == $page) {
    $links = $i;
}

在循环的最后一次迭代中,您将$links 数组转换为整数,然后将其传递给视图。

【讨论】:

    【解决方案2】:

    据我所知,if($i == $page) 永远不会是真的,因为您永远不会在代码开头增加您设置为0$page。另外,请告诉我们您使用的是什么版本的 Phalcon,以及您使用的是什么视图引擎。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-06
      相关资源
      最近更新 更多