[MANUAL] English:
[zend.git] / documentation / manual / en / module_specs / Zend_Mail-CharacterSets.xml
blob8f00ce32863643bbae26e6b9497a41df9d9b9ba0
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Reviewed: no -->
3 <sect1 id="zend.mail.character-sets">
4     <title>Character Sets</title>
6     <para>
7         <classname>Zend_Mail</classname> does not check for the correct character set of the mail
8         parts. When instantiating <classname>Zend_Mail</classname>, a charset for the e-mail itself
9         may be given. It defaults to <code>iso-8859-1</code>. The application has to make sure that
10         all parts added to that mail object have their content encoded in the correct character set.
11         When creating a new mail part, a different charset can be given for each part.
12     </para>
14     <note>
15         <title>Only in text format</title>
17         <para>
18             Character sets are only applicable for message parts in text format.
19         </para>
20     </note>
22     <example id="zend.mail.character-sets.cjk">
23         <title>Usage in CJK languages</title>
25         <para>
26             The following example is how to use <classname>Zend_Mail</classname> in Japanese. This
27             is one of <acronym>CJK</acronym> (aka <acronym>CJKV</acronym> ) languages. If you use
28             Chinese, you may use <acronym>HZ-GB-2312</acronym> instead of
29             <acronym>ISO-2022-JP</acronym>.
30         </para>
32         <programlisting language="php"><![CDATA[
33 //We suppose that character encoding of strings is UTF-8 on PHP script.
34 function myConvert($string) {
35     return mb_convert_encoding($string, 'ISO-2022-JP', 'UTF-8');
38 $mail = new Zend_Mail('ISO-2022-JP');
39 //In this case, You can use ENCODING_7BIT because the ISO-2022-JP does not use MSB.
40 $mail->setBodyText(myConvert('This is the text of the mail.'), null, Zend_Mime::ENCODING_7BIT);
41 $mail->setHeaderEncoding(Zend_Mime::ENCODING_BASE64);
42 $mail->setFrom('somebody@example.com', myConvert('Some Sender'));
43 $mail->addTo('somebody_else@example.com', myConvert('Some Recipient'));
44 $mail->setSubject(myConvert('TestSubject'));
45 $mail->send();
46 ]]></programlisting>
47     </example>
48 </sect1>
49 <!--
50 vim:se ts=4 sw=4 et:
51 -->