2016-02-22 6 views
0

Я использую Google App Engine и пытаюсь отправлять оповещения по электронной почте с помощью API почтовых PHP. Я определил класс с общественной функцией, но всякий раз, когда я запускаю его я получаю эту ошибку:PHP Неустранимая ошибка: Class 'Message' не найден - Google App Engine

PHP Fatal error: Class 'Message' not found in...

PHP код:

use \google\appengine\api\mail\Message; 

    class crawls { 
     public function check() { 
        try { 
        $message = new Message(); 
        $message->setSender('Name <[email protected]>'); 
        $message->addTo($recipients); 
        $message->setSubject('Subject'); 
        $message->setHTMLBody("<p>Message</p>"); 
        $message->send(); 
       } catch (InvalidArgumentException $e) { 
        $error = "Unable to send mail. $e"; 
       } 
    } 
} 

Все работает, когда я двигаюсь код вне класса, но я хочу его внутри класса.

+0

попытаться включить файл и, если его в папке – mohade

+0

Это не файл, который будет включены проверить файл. – user5331188

+0

@ user5331188 Вы могли решить эту проблему? Если это так, рекомендуется разместить ваше решение в качестве ответа здесь, чтобы лучше помочь сообществу. Если нет, то теперь рекомендуется использовать [специальные API отправки почты] (https://cloud.google.com/appengine/docs/standard/php/mail/sendgrid) за пределами App Engine, которые созданы для большого распространения почты. – Jordan

ответ

0

Наследование Класс сообщений:

Определение пространства имен, если это необходимо.

class crawls extends \google\appengine\api\mail\Message { 
    // your code 
} 
+0

Спасибо, я пробовал это, но я все еще получаю ошибку: PHP Fatal error: Class 'Message' не найден в ... – user5331188

+0

@ user5331188 Я обновил свой ответ – Monty

+0

Спасибо, теперь я получаю эту ошибку: PHP Неустранимая ошибка: обход классов может не наследуется от окончательного класса (google \ appengine \ api \ mail \ Message) – user5331188

0

Попробуйте это может он работает для вас:

class crawls { 
    public function check() { 
      try { 
       $message = new \google\appengine\api\mail\Message(); 
       $message->setSender('Name <[email protected]>'); 
       $message->addTo($recipients); 
       $message->setSubject('Subject'); 
       $message->setHTMLBody("<p>Message</p>"); 
       $message->send(); 
      } catch (InvalidArgumentException $e) { 
       $error = "Unable to send mail. $e"; 
      } 
    } 
} 

Надеется, что это помогает