在CakePHP中使用Auth组件时,我不断收到此错误。为什么?

时间:2010-03-27 16:37:26

标签: php authentication cakephp

警告(2):无法修改标头信息 - 已经发送的标头(输出从/Applications/MAMP/htdocs/iframeworking/iframe/app/models/frame.php:7开始)[COREcake / libs / controller / controller .php,第647行]

这是来自frame.php的代码:

<?php
class Frame extends AppModel
{
    var $name = 'Frame';
var $belongsTo = array('User' => array('className' => 'User', 'dependent' => true));
}
?> 

3 个答案:

答案 0 :(得分:2)

你的php结束标记(?>)之后可能有一个空格。

我的建议是在控制器和模型(以及其他仅限PHP的文件)中养成不关闭PHP标记的习惯。 PHP解析器不需要文件末尾的结束标记(暗示),它将在未来避免头痛(即使它最初看起来很“有趣”)。

换句话说,这应该解决它:

<?php
class Frame extends AppModel
{
    var $name = 'Frame';
    var $belongsTo = array('User' => array(/*...*/);
}

答案 1 :(得分:0)

您正在/models/frame.php第7行向Web浏览器输出。这可能是过早的过程 - 我不知道Cake,但我认为模型文件只应包含模型类而不是“活跃”代码。

请注意,即使<?<?php之前的空格也算作输出。

答案 2 :(得分:0)

'?&gt;'后面有空格在底部。删除它将解决问题。

相关问题