【发布时间】:2015-02-24 18:25:46
【问题描述】:
由于升级到 PHP 5.6,我收到大量此错误。
严格标准:只有变量才能通过引用传递 (地址)第 686 行已弃用:非静态方法 YRComms::convertEncodingUTF() 不应该被静态调用, 假设 $this 来自第 690 行 (ADRESS) 中的不兼容上下文
(ADDRESS) 表示 PHP 文件,因为我不想在这里发布整个链接
以下是部分代码:
第 686 行
if(null==$name||''==trim($name))$name=array_pop(explode('/',$url));
第 690 行
$name=YRComms::convertEncodingUTF($name);
第 691 行
$name=YRComms::convertEncodingEntities($name);
第 693 行
$url=YRComms::convertEncodingUTF($url);
等等……
你猜到我应该怎么做?
php 文件可以在这里找到:http://www.filedropper.com/yr 所有错误都可以在这里找到:http://www.filedropper.com/errorfromyr
【问题讨论】:
-
您正在静态调用非静态方法。
-
感谢您的评论,@Halfstop。是的,我明白这一点。也明白这一定是一个烦人的帖子,但我不明白。这样做很危险,我应该改变什么,还是应该离开它?如果这篇文章看起来很烦人,我会删除它。
-
是你的代码坏了,应该修复。 PHP 5.6 对此类事情更加严格。我不知道你的 PHP 代码是什么样的,但是使用 $this-> 而不是 YRComms:: 是你应该做的。
-
感谢您的耐心等待。如果您有时间并想查看它,我将发布 PHP 的链接。
-
旁注:您知道“已弃用”意味着您不应该再使用它了,对吧?应该有一个新的函数或方法可以更好地完成你想要的。
标签: php