我用的是作曲家,但我试过的都没有用。
我试过要求作曲家自编。
require BASE_URL.'assets/vendor/autoload.php';并使用命名空间。
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;但我仍然收到一条错误消息
致命错误:未在
这是我的简化课程
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'vendor/phpmailer/src/Exception.php';
require 'vendor/phpmailer/src/PHPMailer.php';
require 'vendor/phpmailer/src/SMTP.php';
class Email extends model{
public function enviarContato($nome, $email, $mensagem){
$mail = new PHPMailer(true);
}
}我相信我进口错了,所以这是我的路径结构。


我在用Email.php。
谢谢
发布于 2019-01-02 13:51:58
BASE_URL包含
http://192.168.1.240/project/
如果向require提供URL,则整个调用通过web服务器进行,从而得到代码执行的结果,而不是代码本身。您需要一个文件系统路径,例如:
require __DIR__ . '/path/to/autoload.php';发布于 2022-10-17 15:11:25
我也发现了同样的错误,但是我已经从我的DOS命令行中运行了composer require phpmailer/phpmailer安装命令,以便安装在我的PHPStorm环境中,然后它通过PHPStorm自动部署到一个linux服务器上--所以软件文件被部署了,但是调整后的autoload_psr4.php文件与此不匹配--所以这就是问题所在。
为了解决这个问题,我还必须在我的自动部署的linux机器上做一个额外的安装。
https://stackoverflow.com/questions/54007045
复制相似问题