Я изо всех сил пытаюсь настроить PHPMailer и работать в своем приложении.
Установка кажется достаточно простой. Моя структура каталогов выглядит так:
|-[controllers] |---controller.php |-[vendor] |---[PHPMailer] |------class.phpmailer.php |------PHPMailerAutoload.php |-index.php
index.php
<?php ... require __DIR__ . '/vendor/PHPMailer/PHPMailerAutoload.php'; ... ?>
controller.php
<?php include('vendor/PHPMailer/class.phpmailer.php'); $mail = new PHPMailer(); ... ?>
в<?php include('vendor/PHPMailer/class.phpmailer.php'); $mail = new PHPMailer(); ... ?>
Это почти так же просто, как в примере, но когда я запускаю это, я получаю следующую ошибку:
Ошибка анализа: ошибка синтаксиса, неожиданный конец файла в C: \ wamp \ www \ commway \ vendor \ PHPMailer \ class.phpmailer.php в строке 2995
Все отлично работает, я не вижу, как мне удалось это сломать. Я даже пытался переместить все только в файл index.php
но я получаю тот же результат. Как только я вызову $mail = new PHPMailer();
он выдает ошибку.
У меня этот код работает:
// PHPmailer require 'PHPMailer-master/PHPMailerAutoload.php'; $mail = new PHPMailer; $mail->CharSet = 'UTF-8'; $mail->isSMTP(); // Set mailer to use SMTP $mail->Host = SMTP; // Specify main and backup SMTP servers/* $mail->From = EMAIL; $mail->FromName = SENDER; $mail->addAddress($Email, $FirstName); // Add a recipient $mail->WordWrap = 50; // Set word wrap to 50 characters $mail->isHTML(true); // Set email format to HTML $mail->Subject = $mailSubject; $mail->Body = $message; if(!$mail->send()) { echo 'Message could not be sent.'; echo 'Mailer Error: ' . $mail->ErrorInfo; } else { echo 'Message has been sent to ' . $Email . "<br>"; } // end of PHPmailer
со структурой:
PHPMailer-Master -class.phpmailer.php -class.pop3.php -class.smtp.php -PHPmailerAutoload.php