Php 使用ZF mail 2.2.4发送SMTP邮件时出现奇怪错误
使用此代码:Php 使用ZF mail 2.2.4发送SMTP邮件时出现奇怪错误,php,zend-framework,smtp,zend-framework2,zend-mail,Php,Zend Framework,Smtp,Zend Framework2,Zend Mail,使用此代码: include('vendor/autoload.php'); use Zend\Mail\Message; use Zend\Mail\Transport\Smtp as SmtpTransport; use Zend\Mail\Transport\SmtpOptions; $message = new Message(); $message->addTo('email to') ->addFrom('email from') -&
include('vendor/autoload.php');
use Zend\Mail\Message;
use Zend\Mail\Transport\Smtp as SmtpTransport;
use Zend\Mail\Transport\SmtpOptions;
$message = new Message();
$message->addTo('email to')
->addFrom('email from')
->setSubject('Greetings and Salutations!')
->setBody("Sorry, I'm going to be late today!");
$transport = new SmtpTransport();
$options = new SmtpOptions(array(
'name' => 'gmail.com',
'host' => 'smtp.gmail.com',
'port' => 465, // Notice port change for TLS is 587
'connection_class' => 'smtp',
'connection_config' => array(
'username' => 'email from',
'password' => 'pass',
'ssl' => 'tls'
),
));
$transport->setOptions($options);
$transport->send($message);
我得到了这个错误:
Fatal error: Class 'Zend\Validator\ValidatorChain' not found in PHP\vendor\zendframework\zend-mail\Zend\Mail\Protocol\AbstractProtocol.php on line 97
下面是错误的全部流程:
1 0.0003 252376 {main}( ) ..\sendEmail.php:0
2 0.0084 787416 Zend\Mail\Transport\Smtp->send( ) ..\sendEmail.php:31
3 0.0084 787688 Zend\Mail\Transport\Smtp->connect( ) ..\Smtp.php:205
4 0.0084 787856 Zend\Mail\Transport\Smtp->lazyLoadConnection( ) ..\Smtp.php:336
5 0.0084 788736 Zend\Mail\Transport\Smtp->plugin( ) ..\Smtp.php:322
6 0.0122 1104552 Zend\ServiceManager\AbstractPluginManager->get( ) ..\Smtp.php:137
7 0.0122 1105248 Zend\ServiceManager\ServiceManager->get( ) ..\AbstractPluginManager.php:103
8 0.0122 1106184 Zend\ServiceManager\ServiceManager->create( ) ..\ServiceManager.php:481
9 0.0122 1106392 Zend\ServiceManager\ServiceManager->doCreate( ) ..\ServiceManager.php:557
10 0.0122 1106664 Zend\ServiceManager\AbstractPluginManager->createFromInvokable( ) ..\ServiceManager.php:602
11 0.0140 1275976 Zend\Mail\Protocol\Smtp\Auth\Login->__construct( ) ..\AbstractPluginManager.php:172
12 0.0140 1276120 Zend\Mail\Protocol\Smtp->__construct( ) ..\Login.php:65
13 0.0140 1276264 Zend\Mail\Protocol\AbstractProtocol->__construct( ) ..\Smtp.php:14
五,
我尝试了所有的例子,但没有一个有效,我得到了相同的错误。
我认为这是因为我正在本地测试它,但当我上传到服务器上时,它不会工作。我正在wamp上测试这个。
有人知道导致此错误的原因和修复方法吗?如果您需要通过composer使用
zendframework/zend mail
,建议使用zendframework/zend validator
。如果您想要发送任何电子邮件,则需要验证程序
因此,更新composer.json,将zend validator添加为包并运行
composer update
。这将加载验证程序组件,以便您可以运行代码。如果您需要通过composer使用zendframework/zend mail
,建议使用zendframework/zend Validator
。如果您想要发送任何电子邮件,则需要验证程序
因此,更新composer.json,将zend validator添加为包并运行composer update
。这将加载验证器组件,以便您可以运行代码