php - 自 PHP 7 起不支持使用已弃用的 PHP4 样式类构造函数
问题描述
我正在尝试升级托管在 SiteGround 上的 WP 网站的 PHP 版本。升级工具显示此错误:
33 | 警告 | 自 PHP 7 起不支持使用已弃用的 PHP4 样式类构造函数
这是我在给定位置找到的代码:
function gc_XmlBuilder($indent = ' ') {
$this->indent = $indent;
$this->xml = '<?xml version="1.0" encoding="utf-8"?>'."\n";
}
我该如何解决?
解决方案
将函数更改为:
function __construct($indent = ' ') {
$this->indent = $indent;
$this->xml = '<?xml version="1.0" encoding="utf-8"?>'."\n";
}
因为您曾经能够通过类名定义构造函数,并且自PHP 7起已被弃用:
PHP 4 风格的构造函数(与定义它们的类同名的方法)已被弃用,并将在未来被删除。如果 PHP 4 构造函数是类中定义的唯一构造函数,则 PHP 7 将发出 E_DEPRECATED。实现 __construct() 方法的类不受影响。
错误示例,根据文档:
弃用:与其类同名的方法在 PHP 的未来版本中将不再是构造函数;foo 在第 3 行的 example.php 中有一个不推荐使用的构造函数
推荐阅读
- javascript - HLS video quality selector in React.js
- css - typekit 返回状态码 412 前置条件失败
- javascript - 如何手动更改 Parcel 中的文件名?
- python - 使用 Pandas 数据框覆盖现有工作表上的现有 Excel 数据?
- json - 从 Scala 中 json 的字符串表示形式的任何键值中获取值(使用 scala.util.parsing.json)
- powerbi - 使用 Power BI 条件格式
- ios - 带有可可豆荚的“豆荚安装”不起作用
- powerbi - 有什么方法可以检查 PowerBI 中的行是否唯一?
- python - python 3.9 和 rdflib 不断改变 url 中的斜杠
- accordion - Bootstrap Accordion 冲洗 - 外部不工作