John Michael San Diego Ответов: 0

Не удается создать экземпляр объекта phpmailer из phpmailer composer


Привет, в настоящее время я работаю над проектом, в котором есть система забытых паролей. Я решил использовать PHPMailer для отправки электронной почты reset password пользователю, и я установил его через Composer, и теперь он находится в папке vendor. Однако, после осуществления выборки кодов, PHP и выдает ошибку:

Notice: Undefined variable: mail in /opt/lampp/htdocs/capstone-admin/process/loginFunctions.php on line 98

Fatal error: Uncaught Error: Call to a member function isSMTP() on null in /opt/lampp/htdocs/capstone-admin/process/loginFunctions.php:98 Stack trace: #0 {main} thrown in /opt/lampp/htdocs/capstone-admin/process/loginFunctions.php on line 98


Вот часть моего кода в разделе loginFunctions.php:

<?php 
    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\SMTP;
    use PHPMailer\PHPMailer\Exception;

    require __DIR__. '/../vendor/autoload.php';
    $mail = new PHPMailer();
    $mail->isSMTP();
    $mail->SMTPAuth = true;
    $mail->SMTPSecure = 'ssl';
    // More codes ......
?>


И моя структура каталогов такова:

- assets
- helpers
- process
  - loginFunctions.php
- vendor
  - composer
  - phpmailer / phpmailer
  - autoload.php
- views
- .gitignore
- composer.json
- composer.lock
- index.php
- README.md


Что я уже пробовал:

Я пробовал искать общие вопросы и смотреть видео на youtube, но, к сожалению, все равно безуспешно. Любая помощь приветствуется!

Richard MacCutchan

Глядя на вашу структуру каталогов, может оказаться, что пути в вашем каталоге use и require утверждения неверны.

0 Ответов