{"id":6169,"date":"2018-03-27T10:24:04","date_gmt":"2018-03-27T10:24:04","guid":{"rendered":"https:\/\/blog.hostinger.io\/com-ar-tutoriales\/?p=6169"},"modified":"2026-03-10T16:35:00","modified_gmt":"2026-03-10T15:35:00","slug":"enviar-emails-usando-php-mail","status":"publish","type":"post","link":"\/ar\/tutoriales\/enviar-emails-usando-php-mail","title":{"rendered":"C\u00f3mo usar PHP Mail y PHPMailer &#8211; Gu\u00eda completa"},"content":{"rendered":"<p>La mayor&iacute;a de las empresas crean una cuenta de correo electr&oacute;nico profesional para aumentar su credibilidad y generar confianza en los clientes. Para ello, tienes que comprar un dominio y configurar el correo electr&oacute;nico de tu empresa en un cliente de correo electr&oacute;nico o en un servidor.<\/p><p>Si construyes tu sitio web o aplicaci&oacute;n web con el lenguaje de programaci&oacute;n PHP, puedes enviar correos electr&oacute;nicos directamente desde tu servidor web.&nbsp;<\/p><p>La funcionalidad de correo PHP te permite crear formularios de correo personalizados y enviar correos electr&oacute;nicos b&aacute;sicos basados en texto a varios destinatarios.<\/p><p>Hay dos formas de enviar correos electr&oacute;nicos en PHP: utilizando la <strong>funci&oacute;n PHP mail() <\/strong>incorporada o una biblioteca de env&iacute;o de correos como <strong>PHPMailer<\/strong>.<\/p><p>En este art&iacute;culo, trataremos las diferencias entre PHPMailer y la funci&oacute;n <strong>mail() <\/strong>y te mostraremos c&oacute;mo enviar correos electr&oacute;nicos con ambos.<\/p><p class=\"has-text-align-center\"><a href=\"https:\/\/assets.hostinger.com\/content\/ES-Web-Development-Glossary-for-Beginners.pdf\" target=\"_blank\" rel=\"noopener\">Descarga Glosario Completo de Desarrollo Web<\/a><br><\/p><p>\n<div class=\"protip\">\n                    <h2 class=\"featured-snippet title\">&iquest;Qu&eacute; es PHP mail?<\/h2>\n                    <p>PHP mail es una funci&oacute;n que env&iacute;a correos electr&oacute;nicos utilizando scripts PHP. La funci&oacute;n PHP incorporada puede dirigirse a varios destinatarios por env&iacute;o de correo electr&oacute;nico. Sin embargo, no es adecuada para el env&iacute;o masivo de correos electr&oacute;nicos sin utilizar un paquete de correo PHP externo como PHPMailer.<\/p>\n                <\/div><\/p><h2 class=\"wp-block-heading\" id=\"h-phpmailer-vs-mail-ventajas-y-desventajas\">PHPMailer vs mail(): ventajas y desventajas<\/h2><p>PHP mail permite a los administradores de sitios web basados en PHP enviar correo desde su <a href=\"\/ar\/tutoriales\/que-es-un-servidor-web\">servidor web<\/a> utilizando scripts PHP. Es una alternativa popular a contratar un servicio de alojamiento de correo electr&oacute;nico de terceros, ya que la funci&oacute;n PHP est&aacute; integrada en el servidor web.<\/p><p>Enviar correos electr&oacute;nicos en <a href=\"\/ar\/tutoriales\/que-es-php\">PHP<\/a> es posible mediante la funci&oacute;n nativa PHP <strong>mail() <\/strong>o un paquete de correo PHP externo como PHPMailer. Aqu&iacute; tienes una breve descripci&oacute;n de cada m&eacute;todo, incluyendo sus ventajas e inconvenientes:<\/p><h3 class=\"wp-block-heading\">Funci&oacute;n PHP mail()<\/h3><p><strong>mail()<\/strong> es una funci&oacute;n PHP que utiliza scripts PHP para enviar correos electr&oacute;nicos sencillos. La funci&oacute;n mail incluye tres par&aacute;metros obligatorios: <strong>$to<\/strong>, <strong>$subject <\/strong>y <strong>$message<\/strong>. Los par&aacute;metros opcionales a utilizar incluyen <strong>$headers <\/strong>y <strong>$parameters<\/strong>. Los trataremos con m&aacute;s detalle m&aacute;s adelante.<\/p><p>Esta funci&oacute;n PHP integrada devuelve un valor <strong>booleano <\/strong>al ejecutarse: <strong>TRUE <\/strong>si el servidor recibe correctamente el correo electr&oacute;nico para enviarlo o <strong>FALSE <\/strong>en caso de fallo.<\/p><p><strong>Ventajas<\/strong>:<\/p><ul class=\"wp-block-list\">\n<li>Preinstalado y listo para usar, todo lo que necesitas es tener PHP.<\/li>\n\n\n\n<li>Compatible con versiones anteriores, un cambio de versi&oacute;n de PHP no romper&aacute; el script.<\/li>\n\n\n\n<li>F&aacute;cil de aprender.<\/li>\n<\/ul><p><strong>Desventajas<\/strong>:<\/p><ul class=\"wp-block-list\">\n<li>Env&iacute;a correos electr&oacute;nicos utilizando un m&eacute;todo anticuado sin soporte integrado para la autenticaci&oacute;n moderna como SPF y DKIM.<\/li>\n\n\n\n<li>A menudo cae en las carpetas de spam o correo basura debido a la falta de autenticaci&oacute;n y a una configuraci&oacute;n incorrecta.<\/li>\n\n\n\n<li>Requiere una configuraci&oacute;n compleja para SMTP, lo que aumenta la posibilidad de activar los filtros de spam.<\/li>\n\n\n\n<li>No puede gestionar grandes vol&uacute;menes de correos electr&oacute;nicos de forma eficaz.<\/li>\n\n\n\n<li>Ofrece l&iacute;mites de env&iacute;o m&aacute;s bajos y menos fiabilidad en comparaci&oacute;n con PHPMailer.<\/li>\n\n\n\n<li>Devuelve <strong>TRUE <\/strong>aunque el correo electr&oacute;nico no llegue al destinatario.<\/li>\n<\/ul><p><div><p class=\"important\"><strong>&iexcl;Importante! <\/strong>Si eres usuario de Hostinger, ten en cuenta que los l&iacute;mites actuales para los correos electr&oacute;nicos enviados mediante PHP mail() son <strong>100\/d&iacute;a <\/strong>y <strong>10\/minuto<\/strong>. Estos l&iacute;mites se restablecer&aacute;n cada 24 horas y se consumir&aacute;n inmediatamente si hay correos en cola.<\/p><\/div><\/p><h3 class=\"wp-block-heading\">PHPMailer<\/h3><p>PHPMailer es una biblioteca popular de env&iacute;o de correo que soporta el env&iacute;o de correo a trav&eacute;s de la funci&oacute;n <strong>mail() <\/strong>o de un servidor <a href=\"\/ar\/tutoriales\/puerto-smtp\">SMTP<\/a>. Da acceso a un conjunto de funciones para enviar correo, simplificando el proceso manual de configuraci&oacute;n del correo en PHP.<\/p><p><strong>Ventajas<\/strong>:<\/p><ul class=\"wp-block-list\">\n<li>Env&iacute;a correos electr&oacute;nicos a trav&eacute;s de una conexi&oacute;n segura con autenticaci&oacute;n SPF y DKIM, mejorando la entrega en la bandeja de entrada.<\/li>\n\n\n\n<li>Simplifica la configuraci&oacute;n del correo electr&oacute;nico y admite funciones avanzadas como cuerpos HTML y archivos adjuntos.<\/li>\n\n\n\n<li>Admite SMTP con encriptaci&oacute;n <a href=\"\/ar\/tutoriales\/ssl-tls-https\">SSL<\/a> y <a href=\"\/ar\/tutoriales\/que-es-tls\">TLS<\/a> integrada.<\/li>\n\n\n\n<li>Gestiona grandes vol&uacute;menes de correo electr&oacute;nico de forma eficaz en poco tiempo.<\/li>\n<\/ul><p><strong>Desventajas<\/strong>:<\/p><ul class=\"wp-block-list\">\n<li>Requiere instalaci&oacute;n manual a trav&eacute;s de SSH.<\/li>\n\n\n\n<li>Incurre en costes adicionales en el plan de alojamiento web <strong>Single <\/strong>de Hostinger debido a la falta de acceso SSH.<\/li>\n\n\n\n<li>Tiene una curva de aprendizaje m&aacute;s pronunciada que la funci&oacute;n incorporada <strong>mail()<\/strong>.<\/li>\n<\/ul><p><div><p class=\"important\"><strong>&iexcl;Importante! <\/strong>Si utilizas PHPMailer con Titan Mail en Hostinger, el l&iacute;mite de env&iacute;o es de <strong>1000 correos\/d&iacute;a <\/strong>y <strong>300 correos\/hora<\/strong>. Para el servicio de correo electr&oacute;nico de Hostinger, el l&iacute;mite es mayor: hasta <strong>3000 correos\/d&iacute;a <\/strong>sin l&iacute;mite horario. Comprueba los par&aacute;metros y l&iacute;mites de cada servicio, ya que var&iacute;an en funci&oacute;n de tu plan de alojamiento.<\/p><\/div><\/p><h2 class=\"wp-block-heading\" id=\"h-como-utilizar-phpmailer-para-enviar-correos-electronicos\">C&oacute;mo utilizar PHPMailer para enviar correos electr&oacute;nicos<\/h2><p>En esta secci&oacute;n, cubriremos los pasos para enviar correo utilizando PHPMailer. Recomendamos utilizar una conexi&oacute;n SMTP autenticada con PHPMailer para aumentar la entregabilidad de tus correos frente a los filtros de spam.<\/p><h3 class=\"wp-block-heading\">Instalaci&oacute;n de PHPMailer<\/h3><p>Instalar PHPMailer es bastante sencillo, sobre todo si utilizas <a href=\"\/ar\/tutoriales\/como-instalar-composer\">Composer<\/a>.<\/p><p>Ten en cuenta que los <a href=\"\/ar\/hosting-web\">planes de alojamiento web<\/a> Premium y Business de Hostinger y las opciones de <a href=\"\/ar\/cloud-hosting\">alojamiento en la nube<\/a> vienen preinstalados con dos versiones de Composer.<\/p><p>Utiliza el comando <strong>composer <\/strong>para activar la versi&oacute;n <strong>1.10 <\/strong>de Composer. Si necesitas la nueva versi&oacute;n <strong>2.<\/strong>0 o utilizas la versi&oacute;n PHP <strong>8.0 <\/strong>o posterior, ejecuta el comando <strong>composer2<\/strong>.<\/p><figure class=\"wp-block-image size-large\"><a href=\"\/ar\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/blog.hostinger.io\/com-ar-tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/ES-Web-hosting_in-text-banner-1024x300.png\" alt=\"\" class=\"wp-image-29291\" srcset=\"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/ES-Web-hosting_in-text-banner.png 1024w, https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/ES-Web-hosting_in-text-banner-300x88.png 300w, https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/ES-Web-hosting_in-text-banner-150x44.png 150w, https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/ES-Web-hosting_in-text-banner-768x225.png 768w, https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/ES-Web-hosting_in-text-banner-1536x450.png 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><p>\n<div><p class=\"important\"><strong>&iexcl;Importante!<\/strong> Debes instalar PHPMailer utilizando Composer a trav&eacute;s de SSH para que funcione correctamente. A&ntilde;adir un archivo <strong>phpmailer.php <\/strong>con c&oacute;digo SMTP, como veremos m&aacute;s adelante en esta gu&iacute;a, no funcionar&aacute; sin una instalaci&oacute;n adecuada.<\/p><\/div><\/p><p>Sigue estos pasos para instalar PHPMailer manualmente:<\/p><ol class=\"wp-block-list\">\n<li>Desde tu <a href=\"\/ar\/tutoriales\/tutorial-hpanel\">panel de control hPanel<\/a>, ve a <strong>Avanzado &rarr; Acceso SSH <\/strong>y toma nota de la <strong>IP SSH<\/strong>, el <strong>puerto<\/strong>, el <strong>nombre de usuario <\/strong>y la <strong>contrase&ntilde;a <\/strong>en los <strong>detalles SSH<\/strong>.<\/li>\n\n\n\n<li>Abre PuTTY e introduce tu informaci&oacute;n SSH en los <strong>campos Nombre de host (o direcci&oacute;n IP) <\/strong>y <strong>Puerto<\/strong>. A continuaci&oacute;n, haz clic en <strong>Abrir<\/strong>.<\/li>\n\n\n\n<li>Cuando aparezca una ventana de comandos, escribe tu nombre de usuario y contrase&ntilde;a SSH y pulsa <strong>Intro<\/strong>. Recuerda que PuTTY no mostrar&aacute; la contrase&ntilde;a, as&iacute; que no te sorprendas si no aparece en la pantalla.<\/li>\n\n\n\n<li>Ejecuta el siguiente comando para navegar hasta el directorio <strong>public_html<\/strong>:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cd public_html<\/pre><ol start=\"5\" class=\"wp-block-list\">\n<li>Ejecuta el siguiente comando para instalar PHPMailer:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">composer2 require phpmailer\/phpmailer<\/pre><ol start=\"6\" class=\"wp-block-list\">\n<li>Espera un momento hasta que finalice el proceso de instalaci&oacute;n. &Eacute;ste es el aspecto que deber&iacute;a tener:<\/li>\n<\/ol><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-content\/uploads\/sites\/32\/2018\/03\/instalacion-composer.png\" alt=\"Instalaci&oacute;n de Composer\" class=\"wp-image-46393\"><\/figure><\/div><p><div class=\"protip\">\n                    <h4 class=\"title\">Consejo profesional<\/h4>\n                    <p>Aprende m&aacute;s sobre los <a href=\"\/ar\/tutoriales\/comandos-ssh-esenciales\">comandos SSH<\/a> que te ayudar&aacute;n a gestionar tu servidor.<\/p>\n                <\/div><\/p><h3 class=\"wp-block-heading\">Comprender los componentes de PHPMailer<\/h3><p>Para entender c&oacute;mo funciona PHPMailer, repasemos cada componente del script anterior.<\/p><ul class=\"wp-block-list\">\n<li><strong>use PHPMailerPHPMailerPHPMailer;<\/strong> importa la clase PHPMailer al espacio de nombres global.<\/li>\n\n\n\n<li><strong>require &lsquo;..\/vendor\/autoload.php&rsquo;;<\/strong> incluye varias bibliotecas que PHPMailer necesita.<\/li>\n\n\n\n<li><strong>$mail = new PHPMailer;<\/strong> crea un nuevo objeto PHPMailer.<\/li>\n\n\n\n<li><strong>$mail-&gt;isSMTP();<\/strong> indica a la clase PHPMailer que utilice la configuraci&oacute;n SMTP personalizada definida en el script en lugar del servidor de correo local.<\/li>\n\n\n\n<li><strong>$mail-&gt;SMTPDebug = 2;<\/strong> detecta si algo va mal en la conexi&oacute;n SMTP.<\/li>\n\n\n\n<li><strong>$mail-&gt;Host = &lsquo;smtp.hostinger.com&rsquo;;<\/strong> aqu&iacute; es donde se debe especificar la direcci&oacute;n del servidor SMTP.<\/li>\n\n\n\n<li><strong>$mail-&gt;Puerto = 587;<\/strong> establece aqu&iacute; el puerto SMTP. Elegiremos el <a href=\"\/ar\/tutoriales\/puerto-smtp-587\">puerto SMTP 587<\/a> como puerto de env&iacute;o de correo por defecto para todos los tipos de transmisi&oacute;n de datos SMTP.<\/li>\n\n\n\n<li><strong>$mail-&gt;SMTPAuth = true;<\/strong> activa la autenticaci&oacute;n SMTP.<\/li>\n\n\n\n<li><strong>$mail-&gt;Username = &lsquo;micorreo@midominio.tld&rsquo;;<\/strong> especifica aqu&iacute; tu direcci&oacute;n de correo electr&oacute;nico.<\/li>\n\n\n\n<li><strong>$mail-&gt;Password = &lsquo;Mi$tr0ngPa55w0rd!;<\/strong> introduce aqu&iacute; tu contrase&ntilde;a de correo electr&oacute;nico.<\/li>\n\n\n\n<li><strong>$mail-&gt;setFrom(&lsquo;micorreo@midominio.tld&rsquo;, &lsquo;Tu nombre&rsquo;);<\/strong> aqu&iacute; es donde se inserta la direcci&oacute;n de correo electr&oacute;nico del remitente.<\/li>\n\n\n\n<li><strong>$mail-&gt;addReplyTo(&lsquo;micorreo@midominio.tld&rsquo;, &lsquo;Tu nombre&rsquo;);<\/strong> informa al destinatario a qu&eacute; direcci&oacute;n debe responder.<\/li>\n\n\n\n<li><strong>$mail-&gt;addAddress(&lsquo;destinatario@dominio.tld&rsquo;, &lsquo;Nombre del destinatario&rsquo;);<\/strong> inserta aqu&iacute; la direcci&oacute;n del destinatario.<\/li>\n\n\n\n<li><strong>$mail-&gt;Subject = &lsquo;Comprobando si PHPMailer funciona&rsquo;;<\/strong> a&ntilde;ade aqu&iacute; el asunto del correo electr&oacute;nico.<\/li>\n\n\n\n<li><strong>$mail-&gt;msgHTML(file_get_contents(&lsquo;mensaje.html&rsquo;), __DIR__);<\/strong> lee un cuerpo de mensaje HTML de un archivo externo. La funci&oacute;n <strong>file_get_contents(<\/strong>) cargar&aacute; el contenido de <strong>message.html<\/strong>, un archivo local ubicado en el directorio <strong>public_html<\/strong>, y lo incluir&aacute; en el mensaje.<\/li>\n\n\n\n<li><strong>$mail-&gt;Body = &lsquo;Esto es s&oacute;lo el cuerpo del mensaje en texto plano&rsquo;;<\/strong> contiene el cuerpo del mensaje de correo.<\/li>\n\n\n\n<li><strong>\/\/$mail-&gt;addAttachment(&lsquo;adjunto.txt&rsquo;);<\/strong> si quieres incluir adjuntos, a&ntilde;ade los nombres de los archivos y elimina la doble barra de esta declaraci&oacute;n.<\/li>\n\n\n\n<li><strong>if (!$mail-&gt;send()) {<\/strong> define lo que ocurre cuando se ejecuta el script.<\/li>\n\n\n\n<li><strong>echo &lsquo;Error de Mailer:&rsquo;. $mail-&gt;ErrorInfo;<\/strong> ver&aacute;s un mensaje de error y los detalles del error si el script falla en el env&iacute;o.<\/li>\n\n\n\n<li><strong>} else {<\/strong> ampl&iacute;a la sentencia <strong>if <\/strong>y describe lo que ocurre si no se cumple la condici&oacute;n anterior.<\/li>\n\n\n\n<li><strong>echo &lsquo;&iexcl;El mensaje de correo electr&oacute;nico se ha enviado!&rsquo;;<\/strong> significa que el proceso de env&iacute;o del correo electr&oacute;nico se ha realizado correctamente.<\/li>\n<\/ul><p><div class=\"protip\">\n                    <h4 class=\"title\">Consejo profesional<\/h4>\n                    <p>La l&iacute;nea <strong>SMTPDebug = 2; <\/strong>s&oacute;lo es aplicable cuando pruebas un script y quieres ver c&oacute;mo funciona. Recuerda cambiarla a <strong>SMTPDebug = 0; <\/strong>cuando termines la prueba para evitar que los receptores capten el informe de entrega del protocolo SMTP.<\/p>\n                <\/div><\/p><h3 class=\"wp-block-heading\">Usar PHPMailer con Hostinger SMTP<\/h3><p>Despu&eacute;s de instalar PHPMailer, puedes empezar a enviar correos electr&oacute;nicos en PHP. Esta secci&oacute;n te mostrar&aacute; c&oacute;mo enviar correos electr&oacute;nicos a trav&eacute;s del servidor SMTP de Hostinger utilizando PHPMailer.<\/p><p>Para ello, sigue los pasos que se indican a continuaci&oacute;n:<\/p><ol class=\"wp-block-list\">\n<li><a href=\"\/ar\/tutoriales\/como-crear-un-correo\">Crea una cuenta de correo electr&oacute;nico<\/a> accediendo a <strong>hPanel <\/strong>y, a continuaci&oacute;n, ve a <strong>Emails &rarr; Cuentas de correo electr&oacute;nico &rarr; Crear cuenta de correo electr&oacute;nico<\/strong>.<\/li>\n\n\n\n<li>Rellena la nueva direcci&oacute;n de correo electr&oacute;nico y establece una contrase&ntilde;a. A continuaci&oacute;n, haz clic en <strong>Crear<\/strong>. Recuerda esta informaci&oacute;n, ya que la utilizar&aacute;s para enviar correo a trav&eacute;s de PHPMailer.<\/li>\n\n\n\n<li>Desde la misma p&aacute;gina, ve a <strong>Ajustes de configuraci&oacute;n &rarr; Configuraci&oacute;n manual <\/strong>y toma nota del <strong>Puerto SMTP <\/strong>y del <strong>Nombre de host<\/strong>.<\/li>\n\n\n\n<li>Accede al panel de control de <strong>hPanel <\/strong>y navega hasta <strong>Archivos &rarr; Administrador de Archivos<\/strong>. Haz clic en la carpeta <strong>public_html <\/strong>y selecciona <strong>A&ntilde;adir nuevo <\/strong>para crear un nuevo archivo. Nombra el archivo <strong>phpmailer.php <\/strong>y haz clic en <strong>Crear<\/strong>.<\/li>\n\n\n\n<li>Haz doble clic en el archivo <strong>phpmailer.php<\/strong>, y copia y pega el c&oacute;digo que aparece a continuaci&oacute;n despu&eacute;s de realizar todos los cambios necesarios. Aseg&uacute;rate de sustituir <strong>micorreo@midominio.tld <\/strong>y <strong>destinatario@midominio.tld <\/strong>por tu dominio actual y <strong>My$tr0ngPa55w0rd! <\/strong>por la contrase&ntilde;a de tu cuenta de correo electr&oacute;nico.<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&lt;?php\nrequire 'vendor\/autoload.php';\nuse PHPMailerPHPMailerPHPMailer;\n$mail = new PHPMailer;\n$mail-&gt;isSMTP();\n$mail-&gt;SMTPDebug = 2;\n$mail-&gt;Host = 'smtp.hostinger.com';\n$mail-&gt;Port = 587;\n$mail-&gt;SMTPAuth = true;\n$mail-&gt;Username = 'micorreo@midominio.tld';\n$mail-&gt;Password = 'My$tr0ngPa55w0rd!';\n$mail-&gt;setFrom('micorreo@midominio.tld', 'tu nombre');\n$mail-&gt;addReplyTo('micorreo@midominio.tld', 'tu nombre');\n$mail-&gt;addAddress(destinatario@dominio.tld', 'nombre destinatario');\n$mail-&gt;Subject = 'Comprobando si PHPMailer funciona';\n$mail-&gt;msgHTML(file_get_contents('message.html'), __DIR__);\n$mail-&gt;Body = 'Esto es s&oacute;lo el cuerpo del mensaje en texto plano';\n\/\/$mail-&gt;addAttachment('attachment.txt');\nif (!$mail-&gt;send()) {\necho 'Mailer Error:'. $mail-&gt;ErrorInfo;\n} else {\necho '&iexcl;El mensaje de correo electr&oacute;nico se ha enviado!';\n}\n?&gt;<\/pre><ol start=\"6\" class=\"wp-block-list\">\n<li>Despu&eacute;s de editar el c&oacute;digo, haz clic en <strong>Guardar y Cerrar<\/strong>. Para ejecutar el script, introduce <strong>sudominio.tld\/phpmailer.php <\/strong>en tu navegador web.<\/li>\n<\/ol><p><div class=\"protip\">\n                    <h4 class=\"title\">Consejo profesional<\/h4>\n                    <p>Si utilizas Titan Mail, con&eacute;ctate a trav&eacute;s del puerto <strong>465 <\/strong>(SSL) o <strong>587 <\/strong>(STARTTLS). Visita <strong>Emails &rarr; Configurar Desktop App <\/strong>para ver los <a href=\"https:\/\/support.hostinger.com\/es\/articles\/5966022-como-obtener-detalles-de-configuracion-de-la-cuenta-de-correo-electronico-para-titan-email\" target=\"_blank\" rel=\"noreferrer noopener\">detalles de configuraci&oacute;n de cuenta de correo electr&oacute;nico<\/a>.<\/p>\n                <\/div><\/p><h3 class=\"wp-block-heading\">Crear un formulario de contacto PHPMailer<\/h3><p>Adem&aacute;s de enviar correo PHP simple, PHPMailer permite a los usuarios crear varios formularios de contacto, como encuestas de opini&oacute;n.<\/p><p>Al igual que los scripts PHP anteriores, crea un nuevo archivo PHP en la carpeta <strong>public_html <\/strong>y ll&aacute;malo <strong>formscript.php<\/strong>.&nbsp;<\/p><p>Copia y pega el script que aparece a continuaci&oacute;n en el nuevo archivo y modifica los valores en consecuencia:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&lt;?php\nuse PHPMailerPHPMailerPHPMailer;\n$msg = '';\nif (array_key_exists('email', $_POST)) {\nrequire 'vendor\/autoload.php';\n$mail = new PHPMailer;\n$mail-&gt;isSMTP();\n$mail-&gt;Host = 'smtp.hostinger.com';\n$mail-&gt;Port = 587;\n$mail-&gt;SMTPDebug = 0;\n$mail-&gt;SMTPAuth = true;\n$mail-&gt;Username = 'micorreo@midominio.tld';\n$mail-&gt;Password = 'My$tr0ngPa55w0rd!';\n$mail-&gt;setFrom('micorreo@midominio.tld', 'Mr. Snuffles');\n$mail-&gt;addAddress(destinatario@dominio.tld', 'nombre destinatario');\nif ($mail-&gt;addReplyTo($_POST['email'], $_POST['name'])) {\n$mail-&gt;Subject = 'PHPMailer contact form';\n$mail-&gt;isHTML(false);\n$mail-&gt;Body = &lt;&lt;&lt;EOT\nEmail: {$_POST['email']}\nName: {$_POST['name']}\nMessage: {$_POST['message']}\nEOT;\nif (!$mail-&gt;send()) {\n$msg = 'Sorry, something went wrong. Please try again later.';\n} else {\n$msg = 'Message sent! Thanks for contacting us.';\n}\n} else {\n$msg = 'Share it with us!';\n}\n}\n?&gt;\n&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n&lt;meta charset=\"UTF-8\"&gt;\n&lt;title&gt;Contact form&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n&lt;h1&gt;Contact us&lt;\/h1&gt;\n&lt;?php if (!empty($msg)) {\necho \"&lt;h2&gt;$msg&lt;\/h2&gt;\";\n} ?&gt;\n&lt;form method=\"POST\"&gt;\n&lt;label for=\"name\"&gt;Name: &lt;input type=\"text\" name=\"name\" id=\"name\"&gt;&lt;\/label&gt;&lt;br&gt;\n&lt;label for=\"email\"&gt;Email address: &lt;input type=\"email\" name=\"email\" id=\"email\"&gt;&lt;\/label&gt;&lt;br&gt;\n&lt;label for=\"message\"&gt;Message: &lt;textarea name=\"message\" id=\"message\" rows=\"8\" cols=\"20\"&gt;&lt;\/textarea&gt;&lt;\/label&gt;&lt;br&gt;\n&lt;input type=\"submit\" value=\"Send\"&gt;\n&lt;\/form&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/pre><p><div class=\"protip\">\n                    <h4 class=\"title\">Consejo profesional<\/h4>\n                    <p>Tomar la entrada del usuario de <strong>$_POST <\/strong>y utilizarla sin sanear no es seguro debido a los ataques <strong>de cross-site scripting (XSS<\/strong>).<\/p>\n                <\/div><\/p><p>Guarda los cambios y ejecuta el script desde tu navegador.<\/p><p>He aqu&iacute; c&oacute;mo ser&aacute; el resultado:<\/p><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-content\/uploads\/sites\/32\/2018\/03\/ejemplo-formulario-contacto.png\" alt=\"Ejemplo de formulario de contacto\" class=\"wp-image-46394\"><\/figure><\/div><p>Si un visitante env&iacute;a un mensaje a trav&eacute;s del formulario, recibir&aacute; una confirmaci&oacute;n. El contenido del formulario se enviar&aacute; a la direcci&oacute;n de correo electr&oacute;nico que hayas introducido aqu&iacute;:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$mail-&amp;gt;addAddress('destinatario@dominio.tld', 'Nombre destinatario');<\/pre><p><div class=\"protip\">\n                    <h4 class=\"title\">Consejo profesional<\/h4>\n                    <p>Si el formulario de contacto de PHPMailer no funciona, cambia la l&iacute;nea <strong>$mail-&gt;SMTPDebug = 0; <\/strong>por <strong>$mail-&gt;SMTPDebug = 2 <\/strong>para identificar la causa. No olvides eliminar la l&iacute;nea o cambiar el <strong>2 <\/strong>por <strong>0 <\/strong>despu&eacute;s.<\/p>\n                <\/div><\/p><p>Si eres usuario de WordPress, puedes agilizar el proceso de creaci&oacute;n de formularios utilizando un <a href=\"\/ar\/tutoriales\/crear-formulario-contacto-wordpress\">plugin de formulario de contacto<\/a> como <strong>Formidable Forms<\/strong>, <strong>Contact Form 7 <\/strong>o <strong>WPForms<\/strong>.<\/p><h2 class=\"wp-block-heading\" id=\"h-como-enviar-correos-electronicos-utilizando-la-funcion-php-mail\">C&oacute;mo enviar correos electr&oacute;nicos utilizando la funci&oacute;n PHP mail()<\/h2><p>Otro m&eacute;todo para enviar correos electr&oacute;nicos directamente desde PHP es la funci&oacute;n incorporada <strong>mail()<\/strong>.&nbsp;<\/p><p>Para utilizar esta funci&oacute;n, los usuarios que alojen su aplicaci&oacute;n o sitio PHP en un servidor local deben configurar un programa Sendmail cambiando el <a href=\"\/ar\/tutoriales\/que-es-php-ini\">archivo php.ini<\/a> de su carpeta de instalaci&oacute;n de PHP.<\/p><p>Si utilizas un servidor de alojamiento, <strong>Sendmail <\/strong>suele venir ya preconfigurado. Sin embargo, debes asegurarte de que tu proveedor de alojamiento te permite gestionar manualmente la opci&oacute;n de <strong>servicio Sendmail<\/strong>.<\/p><p>Por defecto, el servicio <strong>Sendmail <\/strong>ya est&aacute; activado. No obstante, vuelve a comprobarlo para estar seguro.<\/p><p><div><p class=\"important\"><strong>&iexcl;Importante! <\/strong>Titan Mail activa la funci&oacute;n PHP <strong>mail() <\/strong>por defecto. Por lo tanto, no puedes activarla o desactivarla en hPanel.<\/p><\/div><\/p><h3 class=\"wp-block-heading\">Comprender los componentes de correo PHP<\/h3><p>Para ayudarte a entender la funci&oacute;n PHP <strong>mail()<\/strong>, revisaremos los componentes del script PHP utilizado en la secci&oacute;n anterior.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ini_set( 'display_errors', 1 );\nerror_reporting( E_ALL );<\/pre><p>Las dos primeras l&iacute;neas de arriba activan el informe de errores para informarte si el script PHP ha fallado al ejecutarse.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$from = \"micorreo@midominio.tld\";<\/pre><p>Esta l&iacute;nea contiene la direcci&oacute;n de correo electr&oacute;nico del remitente. La mayor&iacute;a de los proveedores de alojamiento proh&iacute;ben a&ntilde;adir aqu&iacute; direcciones de correo electr&oacute;nico aleatorias debido al riesgo de suplantaci&oacute;n.&nbsp;<\/p><p>Por tanto, es mejor utilizar una con tu nombre de dominio para ejecutar el script con &eacute;xito.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$to = \"micorreo@midominio.tld\";<\/pre><p>La direcci&oacute;n de correo electr&oacute;nico del destinatario va aqu&iacute;. Separa las direcciones de correo electr&oacute;nico con comas si quieres enviar varios correos.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$subject = \"Comprobando correo PHP\";<\/pre><p>Introduce aqu&iacute; el asunto del correo electr&oacute;nico.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$message = \"El correo PHP funciona perfectamente\";<\/pre><p>Aqu&iacute;, introduce el cuerpo de tu mensaje de correo electr&oacute;nico.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$headers = \"De:\" . $from;<\/pre><p>Esta l&iacute;nea suele incluir cabeceras adicionales como <strong>De<\/strong>, <strong>Responder-a <\/strong>y <strong>CC<\/strong>. Puedes separarlos con el CRLF.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">if (mail ($to,$subject,$message,$headers))<\/pre><p>Este script ejecuta la funci&oacute;n <strong>mail() <\/strong>y comprueba si se ha ejecutado correctamente.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">echo \"Se ha enviado el mensaje de correo electr&oacute;nico\";<\/pre><p>El mensaje anterior aparecer&aacute; si la funci&oacute;n <strong>mail() <\/strong>se ejecuta correctamente.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">echo \"El mensaje de correo electr&oacute;nico no se ha enviado\";<\/pre><p>Alternativamente, ver&aacute;s este mensaje si falla la funci&oacute;n <strong>mail()<\/strong>.<\/p><p>Aunque las cabeceras adicionales son opcionales, es esencial incluir la cabecera <strong>&ldquo;De&rdquo; <\/strong>al enviar correo. De lo contrario, recibir&aacute;s una notificaci&oacute;n como &eacute;sta:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Warning: mail(): \"sendmail_from\" not set in php.ini or custom \"From:\" header missing.<\/pre><h3 class=\"wp-block-heading\">Crear un archivo de prueba para el correo PHP<\/h3><p>Despu&eacute;s de asegurarte de que <strong>Sendmail <\/strong>est&aacute; activo, crea un archivo de correo PHP dentro del directorio <strong>public_html<\/strong>.<\/p><p>He aqu&iacute; c&oacute;mo hacerlo:<\/p><ol class=\"wp-block-list\">\n<li>Desde <strong>hPanel<\/strong>, navega a <strong>Archivos<\/strong>&rarr; <strong>&nbsp;Administrador de archivos <\/strong>para acceder al <strong>Administrador de archivos de Hostinger<\/strong>.<\/li>\n\n\n\n<li>Haz doble clic en la carpeta <strong>public_html <\/strong>y selecciona el icono <strong>Nuevo archivo <\/strong>de la parte superior. Nombra este nuevo archivo <strong>testmail.php <\/strong>y pulsa <strong>Crear<\/strong>.<\/li>\n\n\n\n<li>Haz doble clic en <strong>testmail.php <\/strong>para editarlo. Puedes utilizar el c&oacute;digo PHP b&aacute;sico que aparece a continuaci&oacute;n, pero cambiando los par&aacute;metros en consecuencia. Describiremos los componentes del script con m&aacute;s detalle en la siguiente subsecci&oacute;n:<\/li>\n\n\n\n<li>Haz clic en <strong>Guardar y cerrar <\/strong>cuando hayas terminado.<\/li>\n\n\n\n<li>Env&iacute;a el correo electr&oacute;nico accediendo <strong>a tudominio\/testmail.php<\/strong> desde tu navegador web. Recuerda cambiar <strong>&ldquo;tudominio<\/strong>&rdquo; por el dominio utilizado al crear <strong>testmail.php<\/strong>.<\/li>\n<\/ol><h3 class=\"wp-block-heading\">Enviar correos HTML con PHP<\/h3><p>La funci&oacute;n PHP <strong>mail() <\/strong>tambi&eacute;n puede enviar mensajes de correo electr&oacute;nico HTML. Este formato es muy personalizable en comparaci&oacute;n con un mensaje de texto plano.<\/p><p>El proceso para enviar correo HTML es el mismo, pero esta vez debes incluir un mensaje HTML y cabeceras de par&aacute;metros adicionales.<\/p><p>Aqu&iacute; tienes un ejemplo de script b&aacute;sico para enviar un correo electr&oacute;nico HTML:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&lt;?php\nini_set( 'display_errors', 1 );\nerror_reporting( E_ALL );\n$from = \"micorreo@midominio.tld\";\n$to = \"destinatario@dominio.tld\";\n$subject = \"Comprobando PHP mail\";\n$message = \"\n&lt;html&gt;\n&lt;head&gt;\n&lt;title&gt;This is a test HTML email&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n&lt;p&gt;Hi, it's a test email. Please ignore.&lt;\/p&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n\";\n\/\/ The content-type header must be set when sending HTML email\n$headers = \"MIME-Version: 1.0\" . \"rn\";\n$headers .= \"Content-type:text\/html;charset=UTF-8\" . \"rn\";\n$headers = \"From:\" . $from;\nif(mail($to,$subject,$message, $headers)) {\necho \"Message was sent.\";\n} else {\necho \"Message was not sent.\";\n}\n?&gt;<\/pre><h2 class=\"wp-block-heading\" id=\"h-como-solucionar-errores-comunes-de-php-mail-y-phpmailer\">C&oacute;mo solucionar errores comunes de PHP mail y PHPMailer<\/h2><p>En la siguiente secci&oacute;n, revisaremos algunos de los problemas m&aacute;s comunes al utilizar la funci&oacute;n PHP <strong>mail() <\/strong>o PHPMailer y c&oacute;mo solucionarlos.<\/p><h3 class=\"wp-block-heading\">Direcci&oacute;n del remitente rechazada: no es propiedad del usuario<\/h3><p>Este error significa que el servidor no ha podido autentificar al remitente con los datos facilitados.&nbsp;<\/p><p>Para solucionarlo, comprueba la direcci&oacute;n de correo electr&oacute;nico que has utilizado para enviar el mensaje y aseg&uacute;rate de que corresponde a una existente.<\/p><p>Adem&aacute;s, aseg&uacute;rate de que tu <strong>Sender Policy Framework (SPF<\/strong>) est&aacute; activado.&nbsp;<\/p><p>Si utilizas Hostinger, comprueba tu registro SPF accediendo a <strong>hPanel <\/strong>y navegando hasta <strong>Emails<\/strong>&rarr; <strong>&nbsp;Cuentas de correo electr&oacute;nico<\/strong>&rarr; <strong>&nbsp;Configuraci&oacute;n DNS<\/strong> &rarr; <strong>&nbsp;Gestionar la entrega de correo electr&oacute;nico<\/strong>.<\/p><p>Si el registro SPF est&aacute; activado, aparecer&aacute; como <strong>Activo.<\/strong><\/p><h3 class=\"wp-block-heading\">Gmail no pudo verificar que domain.tld enviar&aacute; este mensaje<\/h3><p>Si ves esta advertencia al probar un script de correo PHP, la causa puede ser una de las siguientes:<\/p><ul class=\"wp-block-list\">\n<li><strong>No hay ning&uacute;n registro SPF en la Zona DNS del dominio<\/strong>: si falta el registro o utilizas servidores de nombres externos, a&ntilde;ade manualmente un nuevo registro SPF TXT a trav&eacute;s de hPanel o cPanel.<\/li>\n\n\n\n<li><strong>Has utilizado datos de autenticaci&oacute;n SMTP no v&aacute;lidos<\/strong>: aseg&uacute;rate de utilizar una direcci&oacute;n de correo electr&oacute;nico existente que te pertenezca.<\/li>\n<\/ul><h3 class=\"wp-block-heading\">El correo va a la carpeta de spam<\/h3><p>Hay varias razones por las que el correo PHP puede activar los filtros de spam. Algunas de las causas m&aacute;s comunes son:<\/p><ul class=\"wp-block-list\">\n<li><strong>Asunto enga&ntilde;oso o parecido al spam<\/strong>: suele ocurrir cuando se utilizan t&eacute;rminos como &ldquo;prueba&rdquo; o &ldquo;urgente&rdquo;. Aseg&uacute;rate de establecer una intenci&oacute;n clara en la l&iacute;nea de <strong>Asunto<\/strong>.<\/li>\n\n\n\n<li><strong>Direcci&oacute;n del remitente incorrecta<\/strong>: a&ntilde;adir una direcci&oacute;n incorrecta puede hacer que las medidas de seguridad filtren tu correo electr&oacute;nico para evitar suplantaciones y estafas.<\/li>\n\n\n\n<li><strong>Utilizaci&oacute;n de palabras desencadenantes de spam<\/strong>: elimina de tu mensaje palabras spam como &ldquo;una gran oferta&rdquo; y &ldquo;esto no es spam&rdquo; para aumentar la credibilidad de tu correo electr&oacute;nico.<\/li>\n\n\n\n<li><strong>Tu lista de correo no tiene un enlace para darse de baja<\/strong>: aseg&uacute;rate de incluir un bot&oacute;n de baja para evitar este problema y fomentar la confianza de los lectores.<\/li>\n<\/ul><h3 class=\"wp-block-heading\">No se ha podido conectar con el host SMTP<\/h3><p>Las versiones m&aacute;s recientes de PHP suelen tener un comportamiento SSL m&aacute;s estricto. Si la funci&oacute;n PHP <strong>mail() <\/strong>no se ejecuta despu&eacute;s de actualizar tu PHP a la &uacute;ltima versi&oacute;n, &eacute;sta podr&iacute;a ser la causa.<\/p><p>El uso de PHPMailer con algunos proveedores de alojamiento tambi&eacute;n suele provocar este error de c&oacute;digo.<\/p><p>Por ejemplo, seg&uacute;n la wiki de PHPMailer, GoDaddy bloquea las conexiones SMTP salientes a trav&eacute;s de los puertos <strong>25<\/strong>, <strong>465 <\/strong>y <strong>587 <\/strong>a servidores de terceros como Gmail y Hotmail, excepto los suyos propios. Adem&aacute;s, no admite la integraci&oacute;n con servidores SMTP de terceros.<\/p><p>Utiliza el siguiente script para resolver este error:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$mail-&gt; SMTPOptions = array(\n$mail-&gt;SMTPOptions = array(&nbsp;\n'ssl' =&gt; array(&nbsp;\n'verify_peer' =&gt; false,&nbsp;\n'verify_peer_name' =&gt; false,&nbsp;\n'allow_self_signed' =&gt; true&nbsp;\n)&nbsp;\n);<\/pre><p><div><p class=\"important\"><strong>&iexcl;Importante! <\/strong>Evita implementar estos cambios globalmente en <strong>php.ini<\/strong>, ya que hacerlo permite conexiones inseguras, un problema de seguridad que PHP ha solucionado desde la versi&oacute;n <strong>5.6<\/strong>.<\/p><\/div><\/p><p>Como el SMTP de Hostinger no tiene este problema, considera la posibilidad de migrar a nuestro servicio de <a href=\"\/ar\/correo-profesional\">correo electr&oacute;nico empresarial<\/a> para una mejor experiencia de env&iacute;o.<\/p><figure class=\"wp-block-image size-large\"><a href=\"\/ar\/correo-profesional\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/blog.hostinger.io\/com-ar-tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/Email-hosting-in-text-banner-ES-1024x300.png\" alt=\"\" class=\"wp-image-29274\" srcset=\"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/Email-hosting-in-text-banner-ES.png 1024w, https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/Email-hosting-in-text-banner-ES-300x88.png 300w, https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/Email-hosting-in-text-banner-ES-150x44.png 150w, https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/Email-hosting-in-text-banner-ES-768x225.png 768w, https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-content\/uploads\/sites\/38\/2023\/02\/Email-hosting-in-text-banner-ES-1536x450.png 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusi&oacute;n<\/h2><p>Puedes enviar correos electr&oacute;nicos con PHP utilizando la funci&oacute;n <strong>mail() <\/strong>o una biblioteca de env&iacute;o de correos como PHPMailer.&nbsp;<\/p><p>La primera es adecuada para enviar peque&ntilde;os vol&uacute;menes de mensajes sencillos basados en texto, mientras que la segunda es mejor para enviar correos masivos o crear formularios de contacto.<\/p><p>Puedes aprovechar la funci&oacute;n de correo PHP incorporada creando un nuevo archivo PHP en el directorio <strong>public_html <\/strong>y ejecutando el script mediante tu navegador web.<\/p><p>Por otro lado, enviar correos electr&oacute;nicos con PHPMailer requiere instalar la biblioteca de c&oacute;digo a trav&eacute;s de Composer, crear una cuenta de correo electr&oacute;nico para ella y configurar los ajustes SMTP de tu alojamiento.<\/p><p>En este tutorial, cubrimos la instalaci&oacute;n de PHPMailer, la creaci&oacute;n de un script de prueba y la configuraci&oacute;n de un sencillo formulario de contacto.&nbsp;<\/p><p>Tambi&eacute;n vimos el env&iacute;o de correos electr&oacute;nicos con la funci&oacute;n PHP <strong>mail() <\/strong>y la resoluci&oacute;n de errores comunes durante el proceso de env&iacute;o de correos electr&oacute;nicos.<\/p><p>Esperamos que este tutorial te haya resultado &uacute;til. Si tienes m&aacute;s preguntas, d&eacute;jalas en la secci&oacute;n de comentarios m&aacute;s abajo.<\/p><h2 class=\"wp-block-heading\" id=\"h-enviar-correos-con-php-preguntas-frecuentes\">Enviar correos con PHP &ndash; Preguntas frecuentes<\/h2><p>Esta secci&oacute;n cubre algunas de las preguntas m&aacute;s comunes sobre enviar un email con php.&nbsp;<\/p><div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-694476b9edec0\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">&iquest;Puedo enviar correos electr&oacute;nicos desde PHPMailer a Gmail u otros servicios de correo electr&oacute;nico?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Depende de tu proveedor de alojamiento. Con GoDaddy, no puedes enviar correo a bandejas de entrada que implementan los protocolos de autenticaci&oacute;n de correo SPF y DKIM, como Gmail, Yahoo y Hotmail.&nbsp;u003cbr \/u003eu003cbr \/u003eSin embargo, este problema no persiste con Hostinger. Ponte en contacto con tu proveedor de alojamiento web para aclarar su configuraci&oacute;n SMTP y si admite PHP Mailer con servidores SMTP de terceros. <\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-694476b9edec3\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">&iquest;C&oacute;mo puedo validar las direcciones de correo electr&oacute;nico antes de utilizar la funci&oacute;n PHP mail() o PHPMailer para enviar correos electr&oacute;nicos?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Puedes utilizar la funci&oacute;n u003cstrongu003efilter_var() u003c\/strongu003ey pasar la direcci&oacute;n de correo electr&oacute;nico al filtro u003cstrongu003eFILTER_VALIDATE_EMAILu003c\/strongu003e.&nbsp;u003cbr \/u003eu003cbr \/u003eEste filtro verificar&aacute; la validez del correo electr&oacute;nico, asegur&aacute;ndose de que no contiene caracteres no admitidos ni espacios en blanco.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>La mayor&iacute;a de las empresas crean una cuenta de correo electr&oacute;nico profesional para aumentar su credibilidad y generar confianza en los clientes. Para ello, tienes que comprar un dominio y configurar el correo electr&oacute;nico de tu empresa en un cliente de correo electr&oacute;nico o en un servidor. Si construyes tu sitio web o aplicaci&oacute;n web [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/ar\/tutoriales\/enviar-emails-usando-php-mail\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":85,"featured_media":46888,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_title":"C\u00f3mo enviar correos web con PHP mail() y PHPMailer","rank_math_description":"Descubre c\u00f3mo enviar correos electr\u00f3nicos con PHP mail() y PHPMailer. Aprende a configurar SMTP y resuelve problemas comunes.","rank_math_focus_keyword":"enviar email php","footnotes":""},"categories":[5698],"tags":[14010],"class_list":["post-6169","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-email","tag-php-mail"],"hreflangs":[{"locale":"es-ES","link":"https:\/\/www.hostinger.com\/es\/tutoriales\/enviar-emails-usando-php-mail","default":0},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/enviar-emails-usando-php-mail","default":0},{"locale":"es-MX","link":"https:\/\/www.hostinger.com\/mx\/tutoriales\/enviar-emails-usando-php-mail","default":0},{"locale":"es-CO","link":"https:\/\/www.hostinger.com\/co\/tutoriales\/enviar-emails-usando-php-mail","default":0}],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/posts\/6169","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/users\/85"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/comments?post=6169"}],"version-history":[{"count":17,"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/posts\/6169\/revisions"}],"predecessor-version":[{"id":46887,"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/posts\/6169\/revisions\/46887"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/media\/46888"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/media?parent=6169"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/categories?post=6169"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/ar\/tutoriales\/wp-json\/wp\/v2\/tags?post=6169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}