PHP 在 PHPMailer 中报告 "Cannot redeclare class"
PHP reports "Cannot redeclare class" in PHPMailer
我在这样的脚本中使用 PHPMailer:
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'phpmailer/src/Exception.php';
require 'phpmailer/src/PHPMailer.php';
require 'phpmailer/src/SMTP.php';
这是有效的,但我有另一个脚本也需要使用它。当我尝试重新声明它时,出现以下错误,因为该文件已包含在内...
Cannot declare class PHPMailer\PHPMailer\Exception
我想确保它已被声明,如果没有则加载到这个新页面上。我试过这个但没有运气......
if (!class_exists("PHPMailer\PHPMailer\Exception")) {
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'phpmailer/src/Exception.php';
require 'phpmailer/src/PHPMailer.php';
require 'phpmailer/src/SMTP.php';
}
这就是 require_once 的目的。
The require_once statement is identical to require except PHP will
check if the file has already been included, and if so, not include
(require) it again.
我在这样的脚本中使用 PHPMailer:
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'phpmailer/src/Exception.php';
require 'phpmailer/src/PHPMailer.php';
require 'phpmailer/src/SMTP.php';
这是有效的,但我有另一个脚本也需要使用它。当我尝试重新声明它时,出现以下错误,因为该文件已包含在内...
Cannot declare class PHPMailer\PHPMailer\Exception
我想确保它已被声明,如果没有则加载到这个新页面上。我试过这个但没有运气......
if (!class_exists("PHPMailer\PHPMailer\Exception")) {
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'phpmailer/src/Exception.php';
require 'phpmailer/src/PHPMailer.php';
require 'phpmailer/src/SMTP.php';
}
这就是 require_once 的目的。
The require_once statement is identical to require except PHP will check if the file has already been included, and if so, not include (require) it again.