wordpress DOING_ AJAX php版本问题

hc2pp10m  于 2023-04-20  发布在  WordPress
关注(0)|答案(1)|浏览(128)

我在PHP 7.4.12版本中收到此通知:使用未定义的常量DOING_ AJAX -假设'DOING_AJAX'(这将在未来版本的PHP中抛出错误)
在PHP 8中,我得到了这个错误***致命错误:未捕获错误:***中未定义的常量“DOING_ AJAX ”
是这个函数中的第二行引起的。(if(!is_admin()||(defined(DOING_ AJAX )&& DOING_AJAX)){

private function init() {
    if (!is_admin() || (defined(DOING_AJAX) && DOING_AJAX)) {
        $this->frontend = new Woo_Custom_CSV_Builder_Frontend();
    }
    if (isset($_GET['file'])) {
        //$this->handle_download();
    }
}

有人能为这个问题指出正确的方向吗?

mbskvtky

mbskvtky1#

正如documentation所述,defined函数的用法是:defined(string $constant_name): bool
你必须给予一个字符串作为defined的参数。在你的例子中,给出了一个常量。在早期的PHP版本中,这是可以的,尽管这是一个明显的错误。
只需使用以下命令:

if (!is_admin() || (defined('DOING_AJAX') && DOING_AJAX)) {
   ...
}

相关问题