2009-08-05 9 views
7

Bueno, hasta ahora, he estado usando php built in function, mail(), y no tengo problemas con él, incluso envié una explosión a más de 1000 usuarios. Pero luego, últimamente encontré este phpmailer, que está especialmente diseñado para enviar correos electrónicos.¿Debo usar la función de correo php o phpmailer?

Q1: ¿Debo cambiar a este phpmailer?

Q2: ¿Cuáles son las ventajas de usar phpmailer?

Q3: Encontré otros productos en el sitio web de phpmailer, es decir, phpmailer FE, ML, etc. ¿Qué es eso? ¿Cuál de ustedes está usando?

Q4: ¿Alguien ha intentado enviar correos electrónicos explosivos a más de 2000 usuarios con phpmailer? Si es así, ¿causa algún problema?

Respuesta

7

P1: Definitivamente debe cambiar lejos de usar mail()

P2: mail() función es muy, muy sencilla para la materia. bibliotecas electrónico esconden un montón de cosas de bajo nivel por parte del usuario, y ofrecen formas sencillas de realizar mensajes de correo electrónico HTML, imágenes incrustadas en el correo, etc.

En lugar de phpmailer Me gustaría recomendar SwiftMailer

  • Enviar mensajes de correo electrónico utilizando SMTP, sendmail, Postfix o una implementación personalizada de transporte de sus propios
  • servidores de apoyo que requieren nombre de usuario & contraseña y/o cifrado
  • proteger de los ataques de inyección de cabecera sin eliminar el contenido de datos de petición
  • Enviar compatible con MIME HTML/mensajes de correo electrónico de varias partes
  • Use plugins basados ​​en eventos de personalizar la biblioteca
  • manejar grandes archivos adjuntos y en línea/imágenes integradas, con bajo uso de memoria

que he usado para enviar SwiftMailer 15000+ correos electrónicos, pero como encontrará en la documentación de SwiftMailer, se recomienda enviar correos en lotes más pequeños (depende de su servidor, por ej. 100, 200, 500 por lote), usando cron.

+0

¿Puede el swifthMailer tener mensajes de rebote? Esto es importante para mí .. – bbtang

+1

Depende de cuándo y dónde se produce el "rebote". Si el MTA está conectado su swiftmailer para rechazar una dirección, sí, puede detectar eso. ver http://swiftmailer.org/docs/finding-failures – VolkerK

+1

+1 para "no usar la función de correo y usar una clase existente": la clase existente ya hará la mayor parte del trabajo, y será mucho más probada que cualquier código que podría escribir => ¡gran victoria! –