标签: zend-mail

如何使用Zend_Mail_Protocol_Imap或Zend_Mail_Storage_Imap批量检索电子邮件

我使用Zend_Mail_Storage_Imap来访问电子邮件,但使用以下代码

$storage = new Zend_Mail_Storage_Imap($imap);
$allIds = $storage->getUniqueId(); // i get all key value pair of meesageid and uniqueid
foreach ($allIds as $k => $v) 
{
    echo '<li>' . htmlentities($storage->getMessage($v)->subject) . "</li>\n";
}
Run Code Online (Sandbox Code Playgroud)

我的问题是它循环并一次收到一封电子邮件,这很慢,就像每秒收到两封电子邮件一样慢,这很慢.我正在寻找这些邮件的批量撤销方法,但找不到任何.有没有人以前做过

php zend-mail

7
推荐指数
1
解决办法
588
查看次数

Zend_Mail发送的电子邮件被视为垃圾邮件

请告诉我我做错了什么.我正在使用Zend_Mail类发送电子邮件,如下所示:

$message = <<<STR
You have a new invoice!

Sign in to your clientarea to see it.

Best regards,

Company name
STR;

$mail = new Zend_Mail();
$mail->setBodyText($message);
$mail->setFrom('billing@company.com', 'Company.com');
$mail->addTo('client@email.com', 'Client Name');
$mail->setSubject('You have a new invoice!');
$mail->send();
Run Code Online (Sandbox Code Playgroud)

虽然它是作为垃圾邮件收到的.我的服务器上还有其他应用程序,例如Webmin,它们发送的电子邮件不会被视为垃圾邮件.

php zend-framework email-spam zend-mail

6
推荐指数
1
解决办法
3885
查看次数

Zend Framework:如何阅读电子邮件附件(并保存到磁盘)?

我目前正在使用Zend_Mail_Storage_Imap来使用IMAP阅读电子邮件.由于文档,我能够阅读电子邮件正文(文本和HTML).

现在我想弄清楚如何保存电子邮件附件.我找不到任何解释如何转换原始内容和保存附件的内容.我怎样才能做到这一点?

php imap zend-framework email-attachments zend-mail

6
推荐指数
1
解决办法
5921
查看次数

PHP,sendmail和传输 - 如何加快邮件发送速度

我刚刚编写了一组批量电子邮件类,用于处理大量电子邮件并根据传递的参数解析其内容.如果我在我的数据库中测试1000个随机收件人和1000个随机发件人的电子邮件,直到脚本点击send()部分(我现在评论它),我获得大约2秒的性能和20 MB峰值内存,这很棒.

但是,如果我取消注释发送部分,则发送需要30秒.这是不可接受的,我想以某种方式加快速度.从测试中可以明显看出,延迟是由$ mail-> send()调用引起的,就好像它在等待它返回一些东西然后继续循环并发送下一封电子邮件一样.

我想知道的是:如何加快send()调用?我该怎么做才能让它更快?我尝试使用两种发送方法:

  1. Zend SMTP传输,直接连接到服务器,只是发送.每1000封电子邮件需要30秒.
  2. Sendmail通过Zend_Mail.在准备好每封电子邮件后,只需调用Zend_Mail的发送功能即可.这需要60秒.

请注意,排队绝对是一个选项,我已经将它构建到我的课程中.所需要的只是激活一个cron,它就像一个魅力.但我想知道实际发送以及如何加快速度.所以,实际的send()调用.

php email zend-framework sendmail zend-mail

6
推荐指数
1
解决办法
2056
查看次数

Zend Mail 2.0附件

任何人都可以提供一些关于如何向ZF2邮件组件添加附件的示例吗?

我喜欢:

$message = new Message;
$message->setEncoding('utf-8');
$message->setTo($email);
$message->setReplyTo($replyTo);
$message->setFrom($from);
$message->setSubject($subject);
$message->setBody($body);
Run Code Online (Sandbox Code Playgroud)

但在需要添加附件时卡住了.谢谢.

zend-framework zend-mail zend-framework2

6
推荐指数
1
解决办法
3766
查看次数

Zend_Mail中的UTF-8发件人名称?

我正在使用Zend_Mail并想要自定义发件人名称.

我希望发件人姓名是FooBar爱你Ryan(其中'Ryan'被收件人姓名取代,爱你被收件人的语言替换为'loves'的翻译,就像CD Baby一样).

我试过base64_encodemb_encode_mimeheader()以及其他类似的东西:

mb_internal_encoding('UTF-8');
mb_http_output('UTF-8');
iconv_set_encoding("input_encoding", 'UTF-8');
iconv_set_encoding("output_encoding", 'UTF-8');
iconv_set_encoding("internal_encoding", 'UTF-8'); 
header('Content-Type:text/html; charset=' . 'UTF-8');
Run Code Online (Sandbox Code Playgroud)

它生成此作为发件人: '=?UTF-8?B?RXh0cmFidXjniLHkvaByY3dhbHNoQGV4dHJhYnV4LmNvbQ==?= <email@example.com>'

然后它出现在我的Gmail中(unknown sender).

有任何想法吗?

php zend-framework utf-8 zend-mail

5
推荐指数
1
解决办法
1360
查看次数

如何避免电子邮件标题收到:来自未知和电子邮件转发垃圾邮件

我尝试使用php和Zend_Mail从我们的服务器发送电子邮件.我用smtp传输.这是订阅的混乱电子邮件.但由于某种原因,我发送的电子邮件有奇怪的标题和电子邮件转到垃圾邮件文件夹(我在收到信件的gmail中看到它们):

 Message-Id: <50ee94f7.84fc440a.62dc.ffff9685SMTPIN_ADDED_MISSING@mx.google.com>
    Received: (qmail 10943 invoked from network); 10 Jan 2013 10:16:22 -0000
    Received: from unknown (HELO searchboxindustries.com)  (username@searchboxindustries.com@207.162.215.30)
Run Code Online (Sandbox Code Playgroud)

列表标题"收到:来自未知"是什么意思?可以让电子邮件发送到垃圾邮件吗?如何避免这个奇怪的标题并使电子邮件避免垃圾邮件文件夹 coode有什么问题,或者我对这个域的DNS设置有问题吗?

这是设置标题的代码:

$mailer->setFrom($params['list_email'], $params['list_from_name']);
$mailer->setReplyTo($params['list_email']);

$mailer->addHeader('Sender', $params['list_email'] . '.searchboxindustries.com');                       
$mailer->setReturnPath($params['list_email'] . '.searchboxindustries.com');         

$mailer->addTo($params['email_address']);
Run Code Online (Sandbox Code Playgroud)

配置传输的代码:

$emailConfig = $this->getOption('email');                                   
        $transport = new Zend_Mail_Transport_Smtp($emailConfig['server'], $emailConfig);
Zend_Mail::setDefaultTransport($transport);
Run Code Online (Sandbox Code Playgroud)

来自application.ini的电子邮件配置:

   email.name  = searchboxindustries.com
   email.server = searchboxindustries.com
   email.username = user_name
   email.password = password
   email.auth = plain
   email.port = 587
Run Code Online (Sandbox Code Playgroud)

以下是此类电子邮件的标题:

Delivered-To: gala19612009@gmail.com
Received: by 10.76.94.204 with SMTP id de12csp111150oab;
        Fri, 11 Jan 2013 01:58:49 -0800 (PST) …
Run Code Online (Sandbox Code Playgroud)

php email smtp spam zend-mail

5
推荐指数
1
解决办法
1万
查看次数

通过Gmail smtp服务器使用Zend_Mail发送邮件

我想使用Gmail smtp服务器通过Zend_Mail发送电子邮件.我有这个代码

Zend_Mail::setDefaultTransport(new Zend_Mail_Transport_Smtp("smtp.googlemail.com", array(
    "auth" => "login",
    "username" => "myusername@gmail.com",
    "password" => "mypassword",
    "ssl" => "ssl",
    "port" => 465
)));
Run Code Online (Sandbox Code Playgroud)

但是当我尝试发送电子邮件时,它会抛出一条Exception,并显示连接被拒绝的消息.

哪里我错了?

gmail zend-framework smtp zend-mail

4
推荐指数
1
解决办法
5673
查看次数

在Zend框架中使用gmail发送电子邮件

我正在尝试使用Zend框架中的gmail帐户发送电子邮件.这是我到目前为止所得到的:

$mailTransport = new Zend_Mail_Transport_Smtp('smtp.gmail.com', array(
    'auth'     => 'login',
    'username' => 'myaddress@gmail.com',
    'password' => 'password',
    'port'     => '587',
    'ssl'      => 'tls',
));
Zend_Mail::setDefaultTransport($mailTransport);
$mail = new Zend_Mail();
$mail->setBodyText('This is the text of the mail.');
$mail->setFrom('myaddress@gmail.com', 'sender');
$mail->addTo('reciever@gmail.com', 'receiver');
$mail->setSubject('TestSubject');
$mail->send();
Run Code Online (Sandbox Code Playgroud)

使用此代码,我收到以下错误:

Message: Unable to connect via TLS
Run Code Online (Sandbox Code Playgroud)

我该如何解决?我有一个默认的XAMPP安装设置,在php.ini中没有设置SMTP.

php zend-framework zend-mail

4
推荐指数
1
解决办法
2409
查看次数

使用Zend_Mail时添加PDF附件

使用Zend_Mail时添加附件的正确方法是什么?当我尝试在发送的邮件中打开附加的pdf时,我不断收到以下错误:"无法提取嵌入字体'BAAAAAA + ArialMT'.某些字符可能无法正确显示或打印." PDF仅显示表格但不显示任何字符.

这非常奇怪,因为如果我直接从服务器或我的本地主机下载它,PDF将打开.

这是我用来发送附件的代码:

$html = $view->render('email/invoice.phtml');
$mail = new Zend_Mail("utf-8");

$file = PUBLIC_PATH . DS . 'data' . DS . $invoice . '.pdf';
$at = new Zend_Mime_Part(file_get_contents($file));
$at->filename = basename($file);
$at->disposition = Zend_Mime::DISPOSITION_ATTACHMENT;
$at->encoding = Zend_Mime::ENCODING_8BIT;
$mail->addAttachment($at);

/* Here i add the attachment */
$mail->setBodyHtml($html);
$mail->addTo($order->email, 'Factura '. $invoice . ' '.Zend_Registry::get('siteName'));
$mail->setFrom('vanzari@anunt.com', Zend_Registry::get('siteName'));
$mail->setSubject('Factura '. $invoice . ' '.Zend_Registry::get('siteName'));
$mail->send();
Run Code Online (Sandbox Code Playgroud)

php email zend-framework attachment zend-mail

4
推荐指数
1
解决办法
1万
查看次数