如何使已弃用的函数在 PHP 的最新版本中工作


How can I make the deprecated functions to work in PHP's latest version?

如何使已弃用的函数在PHP的最新版本中工作?我不想在每个页面中更改它的替代功能,这在我拥有的维护项目中是不可能的。 因此,请让我知道是否有办法使已弃用的功能正常工作。

如果您真的无法更改现有代码,那么为与已弃用的函数具有相同规范的新函数创建包装器怎么样?换句话说,您创建了一个新函数,该函数调用已弃用的函数,但接受旧函数的参数。可能有效...

您必须修复它们才能使用替换已弃用 API 的相应 API。已弃用的 API 已弃用是有原因的。

正确的做法是修复您的代码。PHP4 在 4 年前达到生命周期结束,不再受支持。我敢肯定 PHP4 中存在大量永远不会修复的危险错误。

你现在所处的情况称为技术债务。您迟早需要偿还债务。

您可以通过自己重新实现旧函数来增加技术债务,但这会使代码在未来更难维护。修复已弃用的代码后,您现在在代码库中执行的所有操作都可能需要从头开始重新实现。因此,您可以选择继续向已弃用的代码添加函数(并增加债务),或者将代码带入 2012 年并完全偿还债务,然后再继续添加任何新内容。

编写代码并不困难或耗时。您应该能够找到简化的方法来修复已弃用的代码。我相信,如果您只专注于此,您和您的团队可能会在几天内解决大部分或所有已弃用的代码。相比之下,考虑在类似意大利面的代码库中实现最简单的函数需要多少时间。

用的函数是有原因的。您应该将 PHP 发行版保留在较旧的发行版中,或者升级并更新标记为已弃用的函数。您应该做正确的事情,并将函数更新为较新版本的 PHP 中使用的函数。PHP4 在 2008 年停止了开发,这意味着你真的应该在很久以前升级。

如果你在Linux上,Regexxer可能会对一次性更新所有文件有所帮助。