遇到了 PHP 错误
严重程度:8192
消息:创建动态属性 CI_URI::$config 已过时
文件名:core/URI.php
行号:102
回溯:
文件:C:\xampp\htdocs\inv_perpus\index.php 行号:288 函数:require_once
遇到了 PHP 错误
严重程度:8192
消息:创建动态属性 CI_URI::$config 已过时
文件名:core/URI.php
行号:102
回溯:
文件:C:\xampp\htdocs\inv_perpus\index.php 行号:288 函数:require_once
/system/core/URI.php
#[\AllowDynamicProperties]
class CI_URI {
/system/core/Router.php
#[\AllowDynamicProperties]
class CI_Router {
/system/core/Loader.php
#[\AllowDynamicProperties]
class CI_Loader {
/system/core/Controller.php
#[\AllowDynamicProperties]
class CI_Controller {
/system/database/DB_driver.php
#[\AllowDynamicProperties]
abstract class CI_DB_driver {
这是一个与CodeIgniter相关的问题。
在/system/core/URI.php
中,您可以在类顶部添加以下内容来解决它:
/**
* CI Config
*
* @var CI_Config
*/
public $config;
或者,您可以通过以下两种方式之一禁用弃用警告:
php.ini
error_reporting = E_ALL & ~E_DEPRECATED
在代码中:
ini_set('error_reporting', E_ALL & ~E_DEPRECATED);
当然,禁用这些错误是不好的做法,因为这些错误应该被大声地听到并迅速修复。
我向CodeIgniter提出了一个问题并打开了一个拉取请求,以便在他们的下一个版本中解决这个问题。他们应该会很快处理并发布补丁,所以现在就让它自然而然地发生,暂时消除错误提示。
这个问题已经在CodeIgniter 4中得到解决。
虽然这不是最佳实践,但在我的情况下,与其设置错误报告,更好的解决方案是在每个报告行的开头添加@字符。