这是我正在尝试使用的WordPress本地安装.我自己没有写过这行代码.我不明白这个错误意味着什么:
Fatal error: Cannot redeclare class Config in /Applications/XAMPP/xamppfiles/lib/php/Config.php on line 44
Run Code Online (Sandbox Code Playgroud)
第44行内容如下:
class Config {
Run Code Online (Sandbox Code Playgroud)
我的猜测是,某个Config类已经在其他地方声明过,或者该文件第二次被执行.
当您在页面中多次声明一个类时,通常会发生这种情况 - 可能是通过多个包含.
为避免这种情况,请require_once改为使用.如果你使用require_oncePHP将检查文件是否已被包含,如果是,则不再包括(要求)它.
比如说,您有以下代码:
<?php
class foo {
# code
}
... more code ...
class foo { // trying to re-declare
#code
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,PHP将抛出类似于下面的致命错误:
致命错误:无法在第7行的/path/to/script.php中重新声明类foo
在这种情况下,它非常简单 - 只需找到代码的第7行并从那里删除类声明.
另外,为了确保您不尝试重新声明类,您可以使用方便的class_exists()功能:
if(!class_exists('foo')) {
class foo {
# code
}
}
Run Code Online (Sandbox Code Playgroud)
当然,最好的方法是将所有配置组织在一个单独的文件中config.php,然后require_once在任何地方进行组织.这样,您可以确保它只包含一次.
至于调试错误,你可以使用debug_print_backtrace().
| 归档时间: |
|
| 查看次数: |
5055 次 |
| 最近记录: |