问题是:
<?php foreach ($users as $user): ?>
<?php $user = $user[0] ?>
错误:
=> Fatal error: Cannot use object of type UserEntityUser as array in ../module/User/view/user/index/index.phtml
我的班级是:
class IndexController extends ApplicationController
{
/**
* Store the user.
* @var UserEntityUser
*/
protected $_user;
public function indexAction()
{
$offset = 6;
$page = $this->params()->fromQuery('page');
if (!$page) {
$page = 1;
}
$dql = "SELECT
users
FROM UserEntityUser users
GROUP BY users.id
ORDER BY " . $this->getOrderDql();
$query = $this->objectManager()
->createQuery($dql)
->setFirstResult(($page - 1) * $offset)
->setMaxResults($offset);
$users = new Paginator($query, $fetchJoinCollection = true);
$quantity = (int) ceil($users->count() / $offset);
return new ViewModel(
array(
'users' => $users,
'offset' => $offset,
'page' => $page,
'quantity' => $quantity,
'order' => $this->getOrderValue(),
)
);
}
}
感谢您的回答!
(文本使我的帖子不是大部分代码)
因为错误说你cant
对象用作数组,
您需要按以下方式访问对象,
$user->'keyname';
或$user->'filedname'
而不是$user[0]
;
其中键名或字段名是要检索的字段的名称。
我想
$users是$user数组。因此,当使用 foreach 时,$user成为用户字段数组的单个实例。然后你必须访问这样的字段
<?php foreach ($users as $user): ?>
<?php $id = $user['id'] ?>