我尝试将Zend_Paginator
与Zend_Db_Table_Abstract
一起使用来获取数据行集。
我从变量接收数据时遇到了问题。
我的错误内容
" 致命错误:无法在C:\ xampp \ htdocs \ applications \ quickstart \ application \ views \ scripts \ index \ text.phtml中使用Zend_Paginator类型的对象作为数组8"
Text.php:
class Application_Model_Text extends Zend_Db_Table_Abstract
{
protected $_name = 'text';
public function getTexts($page)
{
$query = $this->select();
$paginator = new Zend_Paginator(new Zend_Paginator_Adapter_DbSelect($query));
$paginator->setCurrentPageNumber($page)->setItemCountPerPage(2);
return $paginator;
}
}
IndexController.php:
public function textAction()
{
$page = $this->getParam('page');
$textModel = new Application_Model_Text();
$data = $textModel->getTexts($page);
$this->view->text = $data;
}
pagination.phtml:
<div id="pagination">
<?php $pageVariable = ($this->page)?$this->page: 'page' ?>
<a href="<?= $this->url(array($pageVariable => $this->previous)) ?>">Back</a>
<p>Strona <?= $this->current ?></p>
<a href="<?= $this->url(array($pageVariable => $this->next)) ?>">Next</a>
</div>
text.phtml:
<?php $text = $this->text; ?>
<div id="pagination-box">
<?= $this->paginationControl($text, 'Sliding', array('pagination.phtml', 'default')) ?>
</div>
<div>
<div id="text">
<p><?= $text['text'] ?></p>
</div>
</div>
任何人都知道我做错了什么? 我是Zend的新手,但我真的很喜欢这个框架 提前感谢您的帮助:)
答案 0 :(得分:2)
变化:
<div id="text">
<p><?= $text['text'] ?></p>
</div>
To('text'是一组项目,因此您需要迭代):
<?php foreach($text as $row):?>
<div id="text">
<?= $row->text ?>
</div>
<?php endforeach ?>
答案 1 :(得分:0)
Zend paginator返回行集数组,因此在index.phtml
文件$text
中不是数组,它是一个对象。尝试使用属性,例如:
<?= $text->text; ?>