CakePHP虚拟字段发送头?

CakePHP虚拟字段发送头?,php,cakephp,Php,Cakephp,我有包含以下数据的用户表: class User extends Entity { protected $_virtual = ['createdformated','modifiedformated']; protected function _getCreatedformated() { $date = new Time($this->_properties['created']); $final=strftime("%d/%m/%Y %H:%M", $date-&

我有包含以下数据的用户表:

class User extends Entity
{

protected $_virtual = ['createdformated','modifiedformated'];

protected function _getCreatedformated()
{
    $date = new Time($this->_properties['created']);
    $final=strftime("%d/%m/%Y %H:%M", $date->getTimestamp());
    return $final;
}

protected function _getModifiedformated()
{
    $date = new Time($this->_properties['modified']);
    $final=strftime("%d/%m/%Y %H:%M", $date->getTimestamp());
    return $final;
}
}
如果在我的控制器中,我调用:

    $logusers["data"] = $this->Logusers->find('all')
       ->contain(['Users'])
       ->order(['Logusers.id'=>'DESC']);

     echo json_encode($logusers);
在jsonenconde之后我得到了以下信息

 Warning (512): Unable to emit headers. Headers sent in file=C:\wamp\www\otras\mailing\src\Controller\UsersController.php line=91 [CORE\src\Http\ResponseEmitter.php, line 48]
如果我只留下1(一)个虚拟字段,问题就消失了。。。问题是只有当我同时启用这两个选项时


有什么问题吗?

问题在于你的回声


使用正确的方法将json传递到响应体,并在控制器操作中返回响应。

这是正确的方法吗$此->响应->类型('json')$这个->响应->主体(json_编码($logusers));也应该有效。但是,我个人更喜欢JSON视图,因为它不需要您向操作中添加特定于请求的代码。Cake将检测到请求是JSON,并为您相应地配置响应。好吧,我只是在查看文档,没有解释,它告诉我加载组件并设置_序列化,但什么都没有发生。检查您的请求。您必须发送Accept:application/json。或者向请求添加检测器并启用扩展解析: