【发布时间】:2019-06-30 22:35:52
【问题描述】:
我在这样的脚本中使用 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 或 "use" 为什么你同时使用?尝试删除 PHPMailer 的要求。
-
@Eduardo 它们不是相互排斥的,您确实需要两者。
-
完整的错误信息是什么,它指向之前已经声明过的类?
-
我从来没有使用过两者的用例。 :( 至少使用 Laravel。
-
我不需要同时使用这两个脚本,但是在第二个脚本中我想检查它是否已经初始化,然后如果没有运行使用并要求