PHP 如何处理已弃用的函数?
2022-08-30 23:09:35
收到这些错误“已弃用:已弃用通过引用分配 new 的返回值...”
虽然我知道弃用的函数是什么意思,但我不太清楚PHP对它们有什么作用?仍然像往常一样执行它们?那么在这一点上,对于这个函数,PHP是静默地为变量分配内存位置还是仍然使用引用指针?
编辑 - 感谢您的答案,我问这个问题是因为我们正在使用,库没有纠正错误。adodb_lite
收到这些错误“已弃用:已弃用通过引用分配 new 的返回值...”
虽然我知道弃用的函数是什么意思,但我不太清楚PHP对它们有什么作用?仍然像往常一样执行它们?那么在这一点上,对于这个函数,PHP是静默地为变量分配内存位置还是仍然使用引用指针?
编辑 - 感谢您的答案,我问这个问题是因为我们正在使用,库没有纠正错误。adodb_lite
去掉序的函数仍然存在,并且您会收到警告。因此,它们按预期工作。但是,在未来的版本中,它们可能会消失。
对于您有时会收到通知的其他已弃用的语言功能也是如此。这是一种向具有基于旧PHP版本的代码的用户发出更改信号的方法。
通常,已弃用的功能会在一段时间后被删除,但无法预测这需要多长时间。我知道至少有一种情况,曾经被弃用的功能后来被取消弃用。但是,我认为这是例外。
因此,如果您看到这些警告,请更新代码。大多数情况下,PHP文档有更多信息为什么某些东西被弃用以及该怎么做。大多数情况下,这是一种改进(例如在安全性方面),因此,如果您关心代码,则确实应该处理这些警告。
编辑:我认为在这种情况下,寻找严格的标准通知PHP手册也是值得注意的。它们有些相关,因为这些通知也是语言更改的有用提示。
在开发过程中启用E_STRICT有一些好处。STRICT消息将帮助您使用最新和最好的建议编码方法,例如警告您使用已弃用的函数。
(摘自上面的 PHP 手册链接)
它们将继续按文档记录运行,但将来可能会被删除,因此应尽快在现有代码中转换,而不是在新代码中使用。