只是我,还是renderPartial()
在输出前添加了额外的空间?我的所有renderPartial()
似乎都这样做了。 render()
对我来说很好,不会增加额外的空间。
这是我的示例代码。试图生成RSS,并因为额外的空间而得到错误
public function actionFeed()
{
Yii::import('site.common.extensions.feed.*');
$model = new ABC();
$this->renderPartial('feed', array('model' => $model->findAll()));
}
这是生成的html
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel>
<?xml>
如果我清空我的feed.php
而只是放
<span>asadadasfaf</span>
<span>
我正在使用此扩展程序生成RSS https://github.com/2amigos/efeed
由于存在空间,Firefox正在给我这个错误
XML Parsing Error: XML or text declaration not at start of entity
Location: http://localhost/dev/frontend/www/abc/feed/
Line Number 1, Column 2: <?xml version="1.0" encoding="utf-8"?>
-^
仅供参考,我正在使用:
Yii 1.1.16
OSX 10.10.2
XAMPP 1.8.3-5
CHROME 40.0.2214.94 (64-bit)
FIREFOX 35.0.1
任何人都知道一项工作?或者有同样的问题?
答案 0 :(得分:1)
发现问题,在控制器中调用操作的<?php
标记前面有一个空格。 :\
答案 1 :(得分:0)
我不确切地知道为什么renderPartial()
会在那里添加额外的空间,但你可以这样做。
public function actionFeed()
{
$this->layout = '';
$this->render('feed', array('model' => $model->findAll()));
}
由于render()
适用于您并使用$this->layout=''
,因此您可以停用视图的渲染布局。
希望它对你有用。