【发布时间】:2017-02-26 10:56:49
【问题描述】:
我正在尝试通过 composer 使用 PHPMailer。
我正在为我的应用程序使用命名空间和 PSR-4 自动加载
我的文件组织是这样的
-bin
-controllers
- Controller.php (namespace bin\controllers)
-vendor
-phpmailer
-phpmailer
-src
PHPMailer.php (namespace HPMailer\PHPMailer)
在 composer.json 中,我写了这个
"autoload": {
"psr-4": {"bin\\vendor\\phpmailer\\": "bin/vendor/phpmailer/phpmailer/src/PHPMailer.php"}
}
但是当我使用
<?php
namespace bin\controllers;
use bin\vendor\phpmailer\PHPMailer;
abstract class Controller {
public function __construct()
{
$mail = new PHPMailer();
}
}
我遇到了一个致命错误:
require_once(): 未能打开所需的 '/Users/thomas/Library/Mobile Documents/com~apple~CloudDocs/saveProject/bin/../bin/vendor/phpmailer/PHPMailer.php'
如何配置命名空间以正确使用该类?
非常感谢。
【问题讨论】:
标签: php composer-php phpmailer