PHP: Как исправить эту Неперехваченную ошибку: Класс не найден

#php #class #email #phpmailer #uncaught-exception

Вопрос:

Я пытался отправлять письма с учетной записи smtp. Поэтому я Использовал PHPMailer, Но Получил Ошибку, но я не знаю, что делать.

Кто-нибудь Может мне Помочь?

 Fatal error:  Uncaught Error: Class 'PHPMailer' not found in C:xampphtdocsYCSfun.php:27
 

Вот мой код

config.php

 use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;

require 'vendor/PHPMailer/src/Exception.php';
require 'vendor/PHPMailer/src/PHPMailer.php';
require 'vendor/PHPMailer/src/SMTP.php';
require 'fun.php';
 

index.php

 <?php
 require 'config.php';
?>
 

fun.php

  $mail = new PHPMailer(true);    
 $mail->SMTPDebug = 2;                                 

 $mail->IsSMTP();                                         
 $mail->Host = $_CONFIG["SenderEmail"]["host"];           
 $mail->SMTPAuth = true;                                  
 $mail->Username = $_CONFIG["SenderEmail"]["mail"];       
 $mail->Password = $_CONFIG["SenderEmail"]["pass"];        
 $mail->SMTPSecure = 'tls';                             
 $mail->Port = 587;                                      

 $mail->AddAddress($email, $name);                                 


 $mail->SetFrom($_CONFIG["SenderEmail"]["mail"], $_CONFIG["SenderEmail"]["name"]);    

 $mail->IsHTML(true);                                       
 $mail->CharSet = 'UTF-8';
 $mail->Subject = "Verification Code";
 $mail->Body    = "<h1>".$code."</h1>";

 $mail->Send();
 $re = array ('response'=>'success');
 

Комментарии:

1. Вы включили что-то, что включает в себя материалы PHPMailer, например, в fun.php config.php файл

2. ваш index.php здесь не используется. Как уже упоминалось, вам необходимо включить эту конфигурацию в свой fun.php файл тоже.

3. Это в основном означает, что php не может найти определение класса, в котором вы пытаетесь создать экземпляр fun.php, включение в файл, в котором содержится определение, должно исправить это. имейте в виду, что путь правильный (это будет include или include_once)

4. вы используете composer? тогда вы можете использовать require ‘vendor/autoload.php’;