« DreamHost升级PHP了 »
Weblog » http://www.anysql.net/weblog/lilina_php_505_error.html 2008-09-10今天早上访问基于Lilina的RSS时, 页面中报了如下错误.
Only variables can be passed by reference ...
在网上已证实这是PHP的一个Bug (33643), 当然不能要求DreamHost改PHP版本了, 只能更改rss_parse.inc文件来实现.
// smart append - field and namespace aware
function append($el, $text) {
if (!$el) {
return;
}
if ( $this->current_namespace )
{
if ( $this->initem ) {
$tmpvar = $this->current_item[ $this->current_namespace ][ $el ];
$this->concat($tmpvar , $text);
}
elseif ($this->inchannel) {
$tmpvar = $this->channel[ $this->current_namespace][ $el ];
$this->concat($tmpvar,$text );
}
elseif ($this->intextinput) {
$tmpvar = $this->textinput[ $this->current_namespace][ $el ];
$this->concat($tmpvar , $text );
}
elseif ($this->inimage) {
$tmpvar = $this->image[ $this->current_namespace ][ $el ];
$this->concat($tmpvar , $text );
}
}
上面粗体部份, 是改过的代码, 现在工作正常了.


貌似我的Lilina没有报错?
好象又将PHP降级了,现在是PHP 4.4.8,那个是5.0.5上的Bug。