2016-12-02 4 views
0

Gmail SMTP를 통해 이메일을 보내는 데 문제가 있습니다. 드디어 PHPMailer를 사용하여 어딘가에 도착하기 시작했습니다. 내가 페이지에이 오류가루멘 API의 PHPMailer

require_once '/var/www/html/dragonSocAPI/vendor/phpmailer/PHPMailerAutoload.php'; 

    $mail = new PHPMailer; 

: 나는 함수의 상단에이 코드가 메일 보내려고하고있는 컨트롤러에서

"클래스 '앱 \ HTTP를 컨트롤러 \를 \ PHPMailer 'not found " PHPMailer 클래스를 찾고 있는데 찾을 수 없다는 것을 추측하고 있습니다.하지만 require가 작동하므로 왜 클래스에 액세스하지 못합니까? 그것은 당신의 네임 스페이스에, 그래서 자동 로더는 엉뚱한 곳에서 찾고 - App\Http\Controllers\PHPMailer :

어떤 도움이 오류가있는 클래스 이름에서

+0

다른 파일을 모두 포함 시켰습니까? 작곡가를 사용하는 것처럼 보이므로 PHPMailer의 오토로더를 사용할 필요가 없습니다. – Synchro

+0

예 작곡가를 사용하고 있습니다. github readme에 명시된대로 "composer require phpmailer/phpmailer"를 실행했습니다. 그래서 내가 require_once 라인이 필요 없다고 말하는거야? 그냥 작동해야합니까? – mab3103

+0

예, 작곡가의 오토로더를로드하는 한 보통의 'vendor/autoload.php'입니다. – Synchro

답변

2

봐 주시면 감사하겠습니다. 글로벌 네임 스페이스를 참조하기 위해 use \PHPMailer; 또는 $mail = new \PHPMailer; 등을 추가하면 트릭을 수행해야합니다.

PHPMailer 6.0은 PHPMailer의 네임 스페이스를 소개합니다.

+1

그게 효과가 있습니다. 당신의 도움을 주셔서 대단히 감사합니다. – mab3103