ホームページ  >  記事  >  php教程  >  Zend_Mailはメール送信時の検証機能を実装しタイトル文字化け問題を解決

Zend_Mailはメール送信時の検証機能を実装しタイトル文字化け問題を解決

高洛峰
高洛峰オリジナル
2016-12-26 15:44:551387ブラウズ

この記事では、メール送信の検証機能を実装し、タイトル文字化けの問題を解決する、Zend Framework フレームワークの Zend_Mail の例について説明します。参考として皆さんと共有してください。詳細は次のとおりです。

Zend Framework の Zend_Mail コンポーネントは、テキスト コンテンツを含む電子メールを作成および送信するための汎用的な方法を提供します。 もちろん、 とも互換性があります。電子メール メッセージの各セグメントの関数は、デフォルトの Zend_Mail_Transport_SendMail 送信を使用するか、Zend_Mail_Transport_Smtp を通じて電子メールを送信できます。Zend_Mail_Transport_Sendmail を指定するだけです。そのコードは次のとおりです (コメント付き:):

<?php
require_once &#39;Zend/Mail.php&#39;;
$mail = new Zend_Mail("UTF-8");//设置邮件编码
$mail->setBodyText(&#39;你的邮件内容放在这里!.&#39;) //发送电子邮件地址以及一些发送人的说明信息
->setFrom(&#39;fromemail@example.com&#39;, &#39;发送人的说明信息&#39;) //收信人电子邮件地址以及一些收信人的说明信息
->addTo(&#39;toemail@example.com&#39;, &#39;收信人的说明信息&#39;) //电子邮件标题,解决乱码
->setSubject("=?UTF-8?B?".base64_encode(&#39;电子邮件标题&#39;)."?=")  ->send();
?>

ただし、メールを設定する必要があります。最初のステップとして、GOOGLE にアクセスします。ここでは詳しくは言いませんが、テスト後、メールは Gmail と 163 (NetEase) に送信されます。以前は、Zend Framework のバージョン 1.6 を参照して、タイトルの長さ制限の問題も発生しませんでした。そのような問題はないようです。ZF チームがそのバグを修正したと思います...はは...

これが私自身の実装のコードです:

<?php
require_once ROOT_PATH . &#39;/Zend/Mail.php&#39;;
require_once ROOT_PATH . &#39;/Zend/Mail/Transport/Smtp.php&#39;;
$mail = new Zend_Mail("UTF-8");//设置邮件编码
$config = array(
 &#39;auth&#39;=>&#39;login&#39;, &#39;username&#39;=>"kylingood",//电子件用户名
 &#39;password&#39;=>"这里是填写你电子邮件密码",
 &#39;ssl&#39;=>"ssl"
);
$transport = new Zend_Mail_Transport_Smtp(&#39;smtp.gmail.com&#39;,$config);
$mail->setDefaultTransport($transport);
$mailcontent=&#39;欢迎您的到来!<br /> 您的注册名为:
&#39;.$thisArray [&#39;username&#39;].&#39;<br /> 您的密码为:&#39;.$thisArray [&#39;userpass&#39;].&#39;
<br /> 请您点击这里的地址:<a href="#"><font color="red">激活
</font> </a>您的帐号!
请尽快删除此邮件,以免别人偷看到您的密码<br /> 如果忘了密码,
可以到社区写信请管理员重新设定<br />&#39;;
$mail->setBodyHtml($mailcontent);//可以发送HTML的邮件.真方便! 
$mail->setFrom(&#39;kylingood@gmail.com&#39;, &#39;kylingood&#39;);
$mail->addTo($email, &#39;kylingood&#39;); $title=$thisArray [&#39;username&#39;].&#39;,用户您好,这是网站激活验证邮件!&#39;;
$mail->setSubject("=?UTF-8?B?".base64_encode($title)."?=");
$mail->send();
?>

わかりました...これが大まかに原則ですZend_Mail を使用して電子メールを送信する方法... もちろん、より高度な使い方もあります。たとえば、複数の電子メールを一度に送信することもできます。これを行うには、ZF マニュアルを参照してください...できれば幸いです。もっとコミュニケーションしてください...

この記事が、Zend Framework フレームワークに基づいた PHP プログラミングの皆様のお役に立てれば幸いです。

Zend_Mail による電子メール送信時の検証機能の実装やヘッダー文字化けの解決方法については、PHP 中国語 Web サイトの電子メール関連記事に注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。