1

我安装了 PEAR 库。现在我将我的 PHP 5.2 升级到 PHP 5.4

在 5.4 中,PEAR lib 的一些功能给出了不推荐使用的警告。

例如 PEAR/XML/Unserializer.php 给

PHP Strict Standards:  Redefining already defined constructor for class XML_Parser in /usr/share/pear/XML/Parser.php on line 227

我安装的 PEAR/XML/ 也支持 XML_Parser2,它修复了 PHP 升级的所有问题

但这需要我对已安装的 PEAR 包进行更改,例如我需要更改 PEAR/XML/Unserializer.php 并使其使用 Parser2.php 而不是 Parser.php。

Parser2.php 支持 PHP 5.4。

我的问题是我可以在 PEAR/XML/Unserializer.php 中进行更改。否则会违反某些规则。或者任何其他解决方案?

4

1 回答 1

2

我的问题是我可以在 PEAR/XML/Unserializer.php 中进行更改。否则会违反某些规则。或者任何其他解决方案?

我认为最好的办法是使用受支持的库版本移植代码,即在XML_Parser2编写时使用它可以解决所有问题。

如果缺少某些内容,XML_Parser2但您在以前的版本中拥有它,现在可能不受支持,您应该将其移植到新版本并提供补丁 - 但正如@pce 已经写的那样,没有义务这样做。pear软件包XML_Parser采用宽松的自由软件许可证。

您在此处描述的问题已在大约一年前的问题跟踪器中报告,您可能希望关注该问题:

由于不再维护该软件包,我怀疑会有很大的牵引力,但你总是可以自己跳进去。因此,最好检查您是否无法按照建议的升级路径升级到Pear_XML2.

正如您所看到的,这不是违反某些规则,而是更多的是关于您找到适合您的方法。

于 2013-05-11T07:57:35.597 回答