2009-09-11 4 views
2

Je cherche à intégrer certaines fonctionnalités de messagerie dans mon système, et je ne suis pas trop impressionné par l'utilisation de mail() pour envoyer des mails, car la fonction est assez limitée dans ce qu'elle peut faire .Une manière plus souple d'envoyer des emails en PHP

Idéalement, j'aimerais un framework ou quelque chose que je peux intégrer dans mon système, qui me permettrait de générer les messages à ma façon, puis de les envoyer.

Un couple d'autres caractéristiques qui serait vraiment bien:

  • système de file d'attente, donc des e-mails peuvent être étranglé agréable et simplement.
  • Léger, avec des dépendances minimales
  • Prend en charge les courriers électroniques simples et html, ainsi que tout nombre de pièces jointes.

Répondre

3

Comme la plupart des trous dans la fonctionnalité PHP de base, une option est de le remplir avec une classe Zend Framework. Zend Framework vous permet de choisir les pièces que vous utilisez, les dépendances seront donc minimes. Zend_Mail semble qu'il va gérer votre texte brut/html/pièce jointe. Comme pour un système de file d'attente, ce n'est qu'une opinion, mais ce n'est pas vraiment le travail de PHP. Si vous êtes arrivé au point où le courrier électronique est suffisamment sérieux pour que vous envisagiez une limitation, vous devez vous familiariser avec sendmail, postfix ou tout autre agent de transfert de courrier (MTA) que vous utilisez. Presque toutes les classes PHP qui enveloppent la fonctionnalité de messagerie ne font que renvoyer le message du MTA à gérer. Tout système qui implémente la limitation dans PHP va (probablement) juste ralentir l'envoi du MTA, et le MTA finit toujours par être un point de défaillance.

3

La plupart des frameworks possèdent leurs propres objets Mail qui peuvent être utilisés pour créer des messages.

Personnellement, j'aime Zend_Mail, car il fait partie de Zend Framework, qui est faiblement couplé, donc il peut être utilisé dans le cadre, ou utilisé seul.

Vous pouvez en lire davantage ici: http://framework.zend.com/manual/en/zend.mail.html

Il répond sans aucun doute votre deuxième et troisième exigence. Je ne pense pas que quelque chose va remplir les trois exigences, parce que votre première exigence, d'un système de mise en file d'attente, nécessiterait une intégration étroite avec un serveur.

Si vous cherchez quelque chose pour mettre en file d'attente des messages, vous pourriez vouloir chercher un système de bulletin, mais je n'ai pas trouvé un bon Php open source.

Questions connexes