| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.mail.introduction">
- <title>Introduction</title>
- <sect2 id="zend.mail.introduction.getting-started">
- <title>Pour commencer</title>
- <para>
- <classname>Zend_Mail</classname> fournit des fonctionnalités génériques pour
- écrire et envoyer des courriels au format texte et <acronym>MIME</acronym>. Un courriel peut-être envoyé avec
- <classname>Zend_Mail</classname> via le transporteur par défaut
- <classname>Zend_Mail_Transport_Sendmail</classname> ou via
- <classname>Zend_Mail_Transport_Smtp</classname>.
- </para>
- <example id="zend.mail.introduction.example-1">
- <title>Courriel simple avec <classname>Zend_Mail</classname></title>
- <para>
- Un courriel simple est composé d'un destinataire, d'un sujet, d'un message et
- d'un expéditeur. Pour envoyer ce genre de messages en utilisant
- <classname>Zend_Mail_Transport_Sendmail</classname>, vous pouvez faire comme ceci :
- </para>
- <programlisting language="php"><![CDATA[
- $mail = new Zend_Mail();
- $mail->setBodyText('Ceci est le texte du message.');
- $mail->setFrom('somebody@example.com', 'un expéditeur');
- $mail->addTo('somebody_else@example.com', 'un destinataire');
- $mail->setSubject('Sujet de test');
- $mail->send();
- ]]></programlisting>
- </example>
- <note>
- <title>Définitions minimales</title>
- <para>
- Pour envoyer un courriel avec <classname>Zend_Mail</classname>, vous devez
- spécifier au moins un destinataire, un expéditeur (avec <methodname>setFrom()</methodname>), et
- un message (texte et/ou HTML).
- </para>
- </note>
- <para>
- Pour la plupart des attributs du courriel, il y a des méthodes "get" pour lire les
- informations stockées dans l'objet mail. Pour plus de détails, merci de vous référer à
- la documentation de l'API. Une méthode spéciale est <methodname>getRecipients()</methodname>. Elle
- retourne un tableau avec toutes les adresses mail des destinataires qui ont été ajoutés
- avant l'appel de cette méthode.
- </para>
- <para>
- Pour des raisons de sécurité, <classname>Zend_Mail</classname> filtre tous les
- champs d'en-tête pour éviter tout problème d'injection d'en-têtes avec des caractères de
- nouvelles lignes (<emphasis>\n</emphasis>). Les guillemets doubles sont changés en guillemets
- simples et les crochets en parenthèses dans le nom des émetteurs et des destinataires.
- Si ces caractères sont dans l'adresse mail, ils sont enlevés.
- </para>
- <para>
- Vous pouvez aussi utiliser la plupart des méthodes de l'objet
- <classname>Zend_Mail</classname> via une interface fluide.
- </para>
- <programlisting language="php"><![CDATA[
- $mail = new Zend_Mail();
- $mail->setBodyText('Ceci est le texte du message.')
- ->setFrom('somebody@example.com', 'un expéditeur')
- ->addTo('somebody_else@example.com', 'un destinataire')
- ->setSubject('Sujet de test')
- ->send();
- ]]></programlisting>
- </sect2>
- <sect2 id="zend.mail.introduction.sendmail">
- <title>Configurer le transport sendmail par défaut</title>
- <para>
- Le transporteur par défaut pour une instance <classname>Zend_Mail</classname> est
- <classname>Zend_Mail_Transport_Sendmail</classname>. C'est essentiellement un paquet
- pour la fonction <acronym>PHP</acronym> <ulink url="http://php.net/mail"><methodname>mail()</methodname></ulink>. Si
- vous souhaitez fournir des paramètres additionnels à la fonction <ulink
- url="http://php.net/mail"><methodname>mail()</methodname></ulink>, créez simplement une nouvelle
- instance du transporteur et fournissez vos paramètres au constructeur. La nouvelle
- instance du transporteur peut ainsi devenir le transporteur par défaut
- <classname>Zend_Mail</classname>, ou il peut être fourni à la méthode
- <methodname>send()</methodname> de <classname>Zend_Mail</classname>.
- </para>
- <example id="zend.mail.introduction.sendmail.example-1">
- <title>Fournir des paramètres additionnels au transporteur
- <classname>Zend_Mail_Transport_Sendmail</classname></title>
- <para>
- Cet exemple montre comment changer le Return-Path de la fonction <ulink
- url="http://php.net/mail"><methodname>mail()</methodname></ulink>.
- </para>
- <programlisting language="php"><![CDATA[
- $tr = new Zend_Mail_Transport_Sendmail('-freturn_to_me@example.com');
- Zend_Mail::setDefaultTransport($tr);
- $mail = new Zend_Mail();
- $mail->setBodyText('Ceci est le texte du message.');
- $mail->setFrom('somebody@example.com', 'un expéditeur');
- $mail->addTo('somebody_else@example.com', 'un destinataire');
- $mail->setSubject('TestSubject');
- $mail->send();
- ]]></programlisting>
- </example>
- <note>
- <title>Restrictions en mode Safe</title>
- <para>
- Les paramètres additionnels optionnels peuvent entraînés un échec de la
- fonction <ulink url="http://php.net/mail"><methodname>mail()</methodname></ulink> si <acronym>PHP</acronym>
- fonctionne en mode safe.
- </para>
- </note>
- <warning>
- <title>Transport Sendmail et Windows</title>
- <para>
- Comme le spécifie le manuel PHP, la fonction <methodname>mail()</methodname> a des
- comportements différents sous Windows ou sur les systèmes de type *nix. Utiliser
- le transport Sendmail sous Windows ne fonctionnera pas conjointement avec
- <methodname>addBcc()</methodname>. La fonction <methodname>mail()</methodname>
- enverra vers le destinataire BCC de manière à ce que tous les destinataires
- puissent voir qu'il est destinataire !
- </para>
- <para>
- Ainsi si vous voulez utiliser BCC sur un serveur Windows, utilisez le transport
- SMTP pour l'envoi !
- </para>
- </warning>
- </sect2>
- </sect1>
|