【问题标题】:Unknown column 'wp_' in 'field list' when running WordPress on PHP 8.1在 PHP 8.1 上运行 WordPress 时,“字段列表”中的未知列“wp_”
【发布时间】:2022-01-02 07:53:15
【问题描述】:

现在可以在 PHP 8.1 上运行 Wordpress 吗?我已经在 XAMPP 中安装了 PHP 8.1,但我无法让 Wordpress 工作。我收到此错误消息:

[2021 年 11 月 23 日 18:44:43 UTC] PHP 致命错误:未捕获 mysqli_sql_exception:“字段列表”中的未知列“wp_” C:\xampp\htdocs\my_php_81_folder\normal_local_site\wp-includes\wp-db.php:2056 堆栈跟踪: #0 C:\xampp\htdocs\my_php_81_folder\normal_local_site\wp-includes\wp-db.php(2056): mysqli_query(对象(mysqli),'SELECT wp_') #1 C:\xampp\htdocs\my_php_81_folder\normal_local_site\wp-includes\wp-db.php(1945): wpdb->do_query('SELECT wp') #2 C:\xampp\htdocs\my_php_81_folder\normal_local_site\wp-admin\setup-config.php(317): wpdb->查询('SELECT wp_') #3 {main} 在 C:\xampp\htdocs\my_php_81_folder\normal_local_site\wp-includes\wp-db.php 中抛出 在第 2056 行 [2021 年 11 月 23 日 18:45:45 UTC] PHP 致命错误:未捕获 mysqli_sql_exception:“字段列表”中的未知列“wp_” C:\xampp\htdocs\my_php_81_folder\normal_local_site\wp-includes\wp-db.php:2056

我已验证 PHP 8.1 正在提供给此文件夹,并且我可以运行成功创建和修改本地数据库的 PDO 和 mysqli 命令。

【问题讨论】:

  • 可以this 帮忙吗?
  • 是的,它在 8.0.3 和 8.0.11 上运行良好

标签: php wordpress php-8.1


【解决方案1】:

截至 2021 年 11 月* WordPress 尚未与 PHP 8.1 完全兼容。计划于 2022 年 1 月 25 日发布的 WordPress 5.9 版本应该与 PHP 8.1 兼容。

暂时请使用 PHP 8.0 和 WordPress 以避免奇怪的错误。

* PHP 8.1 于 2021 年 11 月 25 日发布

【讨论】:

    【解决方案2】:

    对于在 Wordpress 5.9 发布之前的几天内达到此目标的任何人,我可以通过快速更改 wp-includes/wp-db.php 来让 5.8.3 在 PHP 8.1 上运行。我在db_connect 方法中的if ( $this->use_mysqli ) 之后添加了这一行(第1630 行):

    mysqli_report(MYSQLI_REPORT_OFF);
    

    此更改是在 Wordpress 5.9 本身中进行的,所以应该没问题。

    【讨论】:

    • 这并不能解决问题
    猜你喜欢
    • 1970-01-01
    • 2020-08-23
    • 1970-01-01
    • 2015-05-18
    • 2014-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多