[GENERIC] Zend_Translate:
[zend.git] / documentation / manual / ja / module_specs / Zend_Mail-Introduction.xml
blobc46f374cedceb9c6afb28b9a1725dd275941cc08
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Reviewed: no -->
3 <!-- EN-Revision: 21740 -->
4 <sect1 id="zend.mail.introduction">
6     <title>導入</title>
8     <sect2 id="zend.mail.introduction.getting-started">
10         <title>まずはじめに</title>
12         <para>
13             <classname>Zend_Mail</classname> は、テキストメールや <acronym>MIME</acronym>
14             マルチパートメールを作成・送信するための一般的な機能を提供します。
15             <classname>Zend_Mail</classname> を使用すると、デフォルトの
16             <classname>Zend_Mail_Transport_Sendmail</classname> か、あるいは
17             <classname>Zend_Mail_Transport_Smtp</classname>
18             を使用してメールを送信できます。
19         </para>
21         <example id="zend.mail.introduction.example-1">
23             <title>Zend_Mail を使用したシンプルなメール送信</title>
25             <para>
26                 受信者、表題、本文および送信者を指定しただけの単純なメールです。
27                 このようなメールを <classname>Zend_Mail_Transport_Sendmail</classname>
28                 を用いて送信するには、次のようにします。
29             </para>
31             <programlisting language="php"><![CDATA[
32 $mail = new Zend_Mail();
33 $mail->setBodyText('This is the text of the mail.');
34 $mail->setFrom('somebody@example.com', 'Some Sender');
35 $mail->addTo('somebody_else@example.com', 'Some Recipient');
36 $mail->setSubject('TestSubject');
37 $mail->send();
38 ]]></programlisting>
40         </example>
42         <note>
43             <title>最低限の定義</title>
45             <para>
46                 <classname>Zend_Mail</classname> でメールを送信するには、
47                 最低 1 か所以上の受信者、送信者 (<methodname>setFrom()</methodname> を使用します)、
48                 そして本文 (テキストや HTML) を指定しなければなりません。
49             </para>
50         </note>
52         <para>
53             大半の属性については、その情報を読み込むための "get"
54             メソッドが用意されています。詳細は、<acronym>API</acronym> ドキュメントを参照ください。
55             <methodname>getRecipients()</methodname> だけは特別で、
56             これまでに追加されたすべての受信者アドレスを配列で返します。
57         </para>
59         <para>
60             セキュリティの観点から、<classname>Zend_Mail</classname>
61             はすべてのヘッダフィールドの改行文字 (<code>\n</code>) を取り除きます。
62             これにより、ヘッダインジェクションを防ぎます。
63             送信者名およびあて先名中の2重引用符は単一引用符に、山括弧は角括弧に変更されます。
64             もしその記号がメールアドレス中にある場合は除去されます。
65         </para>
67         <para>
68             <classname>Zend_Mail</classname> オブジェクトのほとんどのメソッドは、
69             流れるようなインターフェイス形式でコールすることもできます。
70         </para>
72         <programlisting language="php"><![CDATA[
73 $mail = new Zend_Mail();
74 $mail->setBodyText('This is the text of the mail.')
75     ->setFrom('somebody@example.com', 'Some Sender')
76     ->addTo('somebody_else@example.com', 'Some Recipient')
77     ->setSubject('TestSubject')
78     ->send();
79 ]]></programlisting>
81     </sect2>
83     <sect2 id="zend.mail.introduction.sendmail">
85         <title>デフォルトの sendmail トランスポートの設定</title>
87         <para>
88             <classname>Zend_Mail</classname> がデフォルトで使用するのは
89             <classname>Zend_Mail_Transport_Sendmail</classname> です。これは、単に
90             <acronym>PHP</acronym> の <ulink
91             url="http://php.net/mail"><methodname>mail()</methodname></ulink>
92             関数をラップしただけのものです。 <ulink
93             url="http://php.net/mail"><methodname>mail()</methodname></ulink>
94             関数に追加のパラメータを渡したい場合は、
95             新しいインスタンスを作成する際のコンストラクタにパラメータを渡します。
96             新しく作成したインスタンスは、<classname>Zend_Mail</classname>
97             のデフォルトのトランスポートとすることができます。
98             あるいは <classname>Zend_Mail</classname> の <methodname>send()</methodname>
99             メソッドに渡すこともできます。
100         </para>
102         <example id="zend.mail.introduction.sendmail.example-1">
104             <title>Zend_Mail_Transport_Sendmail トランスポートへの追加パラメータの渡し方</title>
106             <para>
107                 この例は、<ulink url="http://php.net/mail"><methodname>mail()</methodname></ulink>
108                 関数の Return-Path を変更する方法を示すものです。
109             </para>
111             <programlisting language="php"><![CDATA[
112 $tr = new Zend_Mail_Transport_Sendmail('-freturn_to_me@example.com');
113 Zend_Mail::setDefaultTransport($tr);
115 $mail = new Zend_Mail();
116 $mail->setBodyText('This is the text of the mail.');
117 $mail->setFrom('somebody@example.com', 'Some Sender');
118 $mail->addTo('somebody_else@example.com', 'Some Recipient');
119 $mail->setSubject('TestSubject');
120 $mail->send();
121 ]]></programlisting>
123         </example>
125         <note>
126             <title>セーフモード時の制限</title>
127             <para>
128                 <acronym>PHP</acronym> をセーフモードで実行している場合、オプションの追加パラメータを指定すると
129                 <ulink url="http://php.net/mail"><methodname>mail()</methodname></ulink>
130                 関数の実行に失敗する可能性があります。
131             </para>
132         </note>
134         <warning>
135             <title>Sendmail トランスポートと Windows</title>
137             <para>
138                 <acronym>PHP</acronym> マニュアルでは、<methodname>mail()</methodname>関数は Windows と *nix ベースのシステムとでは、
139                 異なる振る舞いをすると述べています。
140                 Windows で Sendmail トランスポートを利用すると、
141                 <methodname>addBcc()</methodname> との連携は動作しません。
142                 他のすべての受信者が、受信者として彼を見られるように、
143                 <methodname>mail()</methodname> 関数は BCC 受信者に送ります。
144             </para>
146             <para>
147                 そのため、もし Windows サーバで BCC を使いたいなら、
148                 SMTP トランスポートを送信に使ってください。
149             </para>
150         </warning>
152     </sect2>
154 </sect1>
155 <!--
156 vim:se ts=4 sw=4 et: