{"id":20423,"date":"2022-09-26T00:00:00","date_gmt":"2022-09-26T00:00:00","guid":{"rendered":"https:\/\/www.mailgun.com\/blog\/php-como-usar-mailgun-eficazmente\/"},"modified":"2026-09-14T23:34:41","modified_gmt":"2026-09-14T23:34:41","slug":"php-como-usar-mailgun-eficazmente","status":"publish","type":"blog","link":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/","title":{"rendered":"C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Cuando empec\u00e9 en la programaci\u00f3n, recuerdo debatir si quer\u00eda aprender ASP.NET o PHP. Le\u00ed miles de hilos en foros sobre cada lenguaje para ayudarme a tomar una decisi\u00f3n.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Eleg\u00ed PHP principalmente por la comunidad, la disponibilidad de ejemplos y el hecho de que era de c\u00f3digo abierto. Seguro que tus motivos para adentrarte en el mundo de PHP son muy parecidos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">PHP es uno de los lenguajes m\u00e1s utilizados; sin embargo, hay mucho material confuso o desactualizado en la web.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>El objetivo de esta publicaci\u00f3n en concreto es ofrecerte un resumen detallado sobre c\u00f3mo utilizar Mailgun en tu entorno PHP con ejemplos sencillos para copiar y pegar<\/strong><\/p>\n\n\n\r\n    <nav data-content-type=\"longform\" class=\"toc-block longform-spacings px-5 py-6 px-md-6 px-lg-7 py-md-7 bg-light fs-sm rounded-lg\" aria-labelledby=\"toc-title-1906\"><p class=\"h5 m-0\" id=\"toc-title-1906\">\u00cdndice<\/p><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">01<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#uso-de-la-biblioteca-oficial-de-mailgun-php\">Uso de la biblioteca oficial de Mailgun-PHP<\/a><a class=\"scrollme link-body-color\" href=\"#pasos\">Pasos<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">02<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#uso-de-swift-mailer\">Uso de Swift Mailer<\/a><a class=\"scrollme link-body-color\" href=\"#pasos\">Pasos<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">03<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#uso-de-php-mailer\">Uso de PHP Mailer<\/a><a class=\"scrollme link-body-color\" href=\"#pasos\">Pasos<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">04<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#prepararlo-es-fantastico\">Prepararlo es fant\u00e1stico<\/a><\/div><\/div><\/nav>\n\n\n<h2 class=\"wp-block-heading\">Uso de la biblioteca oficial de Mailgun-PHP<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Una forma muy sencilla de utilizar Mailgun y aprovechar su excelente API para enviar emails es instalar la biblioteca oficial de PHP en tu entorno de desarrollo, escrita y mantenida\u00a0<a href=\"https:\/\/github.com\/mailgun\/mailgun-php\" target=\"_tabs\" rel=\"noopener noreferrer\">como un proyecto de c\u00f3digo abierto<\/a>\u00a0por nuestro Mailgunner Travis.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pasos<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Abre tu terminal y ve a la carpeta p\u00fablica de tu servidor. Aqu\u00ed es donde guardas tu sitio web y var\u00eda en funci\u00f3n de la instalaci\u00f3n y el servidor web utilizado: <code>cd \/var\/www\/html<\/code><\/li>\n\n\n\n<li>Crea un directorio vac\u00edo para este proyecto: <code>mkdir mailgun-php<\/code><\/li>\n\n\n\n<li>Entra en el directorio y ejecuta los siguientes comandos: <code>cd mailgun-php <\/code>(cambia de directorio)<\/li>\n\n\n\n<li>Ahora ejecuta el siguiente comando para descargar e instalar Composer. &#8211; <code>curl -sS https:\/\/getcomposer.org\/installer | php<\/code><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Cuando utilizamos Composer de esta forma, nos permite descargar bibliotecas de PHP f\u00e1cilmente a nivel local dentro de la carpeta. Ahora, utilicemos Composer para <b>instalar la propia biblioteca de Mailgun<\/b>.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Vamos a ejecutar esto para indicarle a Composer que vamos a utilizar (y, por tanto, necesitamos descargar) la biblioteca de Mailgun (aqu\u00ed utilizamos la versi\u00f3n 1.7.1) y sus dependencias. &#8211; <code>php composer.phar require mailgun\/mailgun-php:~1.7.1<\/code><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u00a1Enhorabuena, has instalado la biblioteca oficial de Mailgun y ya lo tienes todo listo para <b>escribir c\u00f3digo<\/b>!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Abre un archivo e incluye el archivo\u00a0<code>vendor\/autoload.php <\/code>para empezar. En todos los ejemplos siguientes se da por hecho que ya has incluido esto en tu archivo:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                PHP                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-PHP\">\r\n                                <code id=\"code_0_content\" class=\"language-PHP\">\r\n\r\n                                    \r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">A continuaci\u00f3n, <a href=\"https:\/\/github.com\/mailgun\/mailgun-php\" target=\"_tabs\" rel=\"noopener noreferrer\">sigue estas instrucciones de la documentaci\u00f3n oficial<\/a> para enviar un mensaje utilizando el SDK:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                PHP                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-PHP\">\r\n                                <code id=\"code_0_content\" class=\"language-PHP\">\r\n\r\n                                    messages()-&gt;send($domain, $params);\r\n$mg-&gt;messages()-&gt;send(&#039;example.com&#039;, [\r\n  &#039;from&#039;    =&gt; &#039;bob@example.com&#039;,\r\n  &#039;to&#039;      =&gt; &#039;sally@example.com&#039;,\r\n  &#039;subject&#039; =&gt; &#039;The PHP SDK is awesome!&#039;,\r\n  &#039;text&#039;    =&gt; &#039;It is so simple to send a message.&#039;\r\n]);\r\n?&gt;\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\"><b>Recuerda: <\/b><code>$domain<\/code> debe coincidir con el dominio que has configurado en <a href=\"https:\/\/app.mailgun.com\/app\/domains\" target=\"_tabs\" rel=\"noopener noreferrer\">app.mailgun.com<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Uso de Swift Mailer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Utilizar Mailgun con\u00a0<a href=\"https:\/\/github.com\/swiftmailer\/swiftmailer\" target=\"_tabs\" rel=\"noopener noreferrer\">Swift Mailer<\/a>\u00a0es muy sencillo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00a1Aseg\u00farate de tener a mano las credenciales SMTP de tu dominio! Puedes\u00a0<a href=\"https:\/\/app.mailgun.com\/sessions\/new\" target=\"_tabs\" rel=\"noopener noreferrer\">encontrarlas aqu\u00ed<\/a>\u00a0y se llaman:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Inicio de sesi\u00f3n SMTP predeterminado<\/li>\n\n\n\n<li>Contrase\u00f1a predeterminada<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Pasos<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Crea una carpeta llamada <i>Swiftmailer: <\/i><code>mkdir swiftmailer, cd swiftmailer<\/code><\/li>\n\n\n\n<li>Descarga Composer para instalar <i>swiftmailer <\/i>y sus dependencias\n<ul class=\"wp-block-list\">\n<li><code>curl -sS https:\/\/getcomposer.org\/installer | php<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Instala <i>Swiftmailer<\/i>\n<ul class=\"wp-block-list\">\n<li><code>php composer.phar require swiftmailer\/swiftmailer @stable<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Se descargar\u00e1n los archivos; una vez finalizado, solo tienes que crear tu propio archivo vac\u00edo para comprobar que phpmailer funciona. Puedes hacerlo en tu terminal ejecutando lo siguiente:\n<ul class=\"wp-block-list\">\n<li><code>touch mailgun_with_swiftmailer.php<\/code><\/li>\n\n\n\n<li><code>vim mailgun_with_swiftmailer.php<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed estamos utilizando vim, pero puedes editar el archivo\u00a0<code>mailgun_with_swiftmailer.php<\/code>\u00a0en el editor que te resulte m\u00e1s c\u00f3modo.<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                PHP                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-PHP\">\r\n                                <code id=\"code_0_content\" class=\"language-PHP\">\r\n\r\n                                    setUsername(&#039;your SMTP username&#039;)\r\n  -&gt;setPassword(&#039;your SMTP password&#039;)\r\n  ;\r\n\r\n\/\/ Create the Mailer using your created Transport\r\n$mailer = Swift_Mailer::newInstance($transport);\r\n\r\n\/\/ Create a message\r\n$message = Swift_Message::newInstance(&#039;Hello from Mailgun&#039;)\r\n  -&gt;setFrom(array(&#039;someone@domain.com&#039; =&gt; &#039;John Doe&#039;))\r\n  -&gt;setTo(array(&#039;someone_else@domain.org&#039;, &#039;third_contact@domain.org&#039; =&gt; &#039;A third name&#039;))\r\n  -&gt;setBody(&quot;And that&#039;s another ace in the hole for the Mailgun dev!&quot;)\r\n  ;\r\n\r\n\/\/ Send the message\r\n$result = $mailer-&gt;send($message);\r\n?&gt;\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Puedes encontrar m\u00e1s informaci\u00f3n sobre c\u00f3mo enviar emails mucho m\u00e1s complejos en la\u00a0<a href=\"http:\/\/swiftmailer.org\/docs\/messages.html\" target=\"_tabs\" rel=\"noopener noreferrer\">documentaci\u00f3n de Swiftmailer, disponible en l\u00ednea aqu\u00ed<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Uso de PHP Mailer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Mailgun tambi\u00e9n se puede utilizar junto con una de las bibliotecas de env\u00edo de emails m\u00e1s famosas de PHP:\u00a0<a href=\"https:\/\/github.com\/PHPMailer\/PHPMailer\" target=\"_tabs\" rel=\"noopener noreferrer\">PHP Mailer<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">PHP Mailer es una alternativa muy v\u00e1lida a la funci\u00f3n integrada\u00a0<code>mail()<\/code>\u00a0de PHP, ya que acelera y permite personalizar en gran medida la forma en que env\u00edas emails con PHP. Las distribuciones de Linux y Mac OS X cuentan con <b>una funci\u00f3n integrada<\/b> para enviar emails, aunque poco fiable. Por cierto, cabe mencionar que Windows no tiene absolutamente nada para enviar emails, as\u00ed que te sugiero que sigas leyendo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pasos<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Crea una carpeta llamada <code>phpmailer<\/code>\n<ul class=\"wp-block-list\">\n<li><code>mkdir phpmailer<\/code><\/li>\n\n\n\n<li><code>cd phpmailer<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Descarga Composer para instalar <code>phpmailer <\/code>y sus dependencias\n<ul class=\"wp-block-list\">\n<li><code>curl -sS https:\/\/getcomposer.org\/installer | php<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Composer est\u00e1 listo. Ahora vamos a instalar Phpmailer (5.2.8):\n<ul class=\"wp-block-list\">\n<li><code>php composer.phar require phpmailer\/phpmailer:5.2.8<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Se descargar\u00e1n los archivos; una vez finalizado, solo tienes que crear tu propio archivo vac\u00edo para comprobar que phpmailer funciona\n<ul class=\"wp-block-list\">\n<li><code>touch mailgun_with_phpmailer.php<\/code><\/li>\n\n\n\n<li><code>vim mailgun_with_phpmailer.php<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed estamos utilizando vim, pero puedes editar el archivo\u00a0<code>mailgun_with_phpmailer.php<\/code>\u00a0en el editor que te resulte m\u00e1s c\u00f3modo.<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                PHP                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-PHP\">\r\n                                <code id=\"code_0_content\" class=\"language-PHP\">\r\n\r\n                                    isSMTP();  \/\/ Set mailer to use SMTP\r\n$mail-&gt;Host = &#039;smtp.mailgun.org&#039;;  \/\/ Specify mailgun SMTP servers\r\n$mail-&gt;SMTPAuth = true; \/\/ Enable SMTP authentication\r\n$mail-&gt;Username = &#039;username@domain.com&#039;; \/\/ SMTP username from https:\/\/mailgun.com\/cp\/domains\r\n$mail-&gt;Password = &#039;myp@55w0rd&#039;; \/\/ SMTP password from https:\/\/mailgun.com\/cp\/domains\r\n$mail-&gt;SMTPSecure = &#039;tls&#039;;   \/\/ Enable encryption, &#039;ssl&#039;\r\n\r\n$mail-&gt;From = &#039;sender@domain.com&#039;; \/\/ The FROM field, the address sending the email \r\n$mail-&gt;FromName = &#039;Orlie&#039;; \/\/ The NAME field which will be displayed on arrival by the email client\r\n$mail-&gt;addAddress(&#039;recipient@domain.net&#039;, &#039;BOB&#039;);     \/\/ Recipient&#039;s email address and optionally a name to identify him\r\n$mail-&gt;isHTML(true);   \/\/ Set email to be sent as HTML, if you are planning on sending plain text email just set it to false\r\n\r\n\/\/ The following is self explanatory\r\n$mail-&gt;Subject = &#039;Email sent with Mailgun&#039;;\r\n$mail-&gt;Body    = &#039;&lt;span style=&quot;color: red&quot;&gt;Mailgun rocks&lt;\/span&gt;, thank you &lt;em&gt;phpmailer&lt;\/em&gt; for making emailing easy using this &lt;b&gt;tool!&lt;\/b&gt;&#039;;\r\n$mail-&gt;AltBody = &#039;Mailgun rocks, shame you can&#039;t see the html sent with phpmailer so you&#039;re seeing this instead&#039;;\r\n\r\nif(!$mail-&gt;send()) {  \r\n    echo &quot;Message hasn&#039;t been sent.&quot;;\r\n    echo &#039;Mailer Error: &#039; . $mail-&gt;ErrorInfo . &quot;n&quot;;\r\n} else {\r\n    echo &quot;Message has been sent  n&quot;;\r\n\r\n}\r\n?&gt;\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Los ajustes para la autenticaci\u00f3n con el\u00a0<a href=\"https:\/\/help.mailgun.com\/hc\/en-us\/articles\/203380100-Where-can-I-find-my-API-key-and-SMTP-credentials-\" target=\"_tabs\" rel=\"noopener noreferrer\">servidor SMTP de Mailgun se pueden encontrar aqu\u00ed<\/a>, igual que con Swiftmailer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Inicia sesi\u00f3n en el panel de control de Mailgun, elige un dominio (o el dominio de pruebas que incluye cada cuenta nueva si no has configurado un dominio personalizado), y copia y pega estos datos (Inicio de sesi\u00f3n SMTP predeterminado, Contrase\u00f1a predeterminada) en el fragmento de c\u00f3digo anterior, en los campos de usuario y contrase\u00f1a de SMTP.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Prepararlo es fant\u00e1stico<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00bfUtilizas otras bibliotecas junto con Mailgun? Si es as\u00ed, nos encantar\u00eda incluirlo en nuestra pr\u00f3xima publicaci\u00f3n del blog sobre PHP, \u00a1con cobertura completa y ejemplos!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00a1Feliz env\u00edo!<\/p>\n\n\n\r\n    <aside data-content-type=\"longform\"  class=\"banner-block longform-spacings rounded-lg shadow-lg px-5 py-6 px-md-6 py-md-7 p-lg-7 bg-light\" data-theme=\"dark\" aria-labelledby=\"banner-block-block_b99db69794701ea072f5431fceee2dbf\">\r\n                    <p class=\"text-uppercase section-caption text-body-color\">\r\n                Reg\u00edstrate            <\/p>\r\n                            <p class=\"h4 text-accent fw-bold\" id=\"banner-block-block_b99db69794701ea072f5431fceee2dbf\">\r\n                Empezar es facil\u00edsimo. Y gratis.            <\/p>\r\n                            <div class=\"mb-0 text-body-color\">\r\n                                    <div class=\"content-body mb-0 text-body-color\">Descubre todo lo que puedes lograr con la mejor plataforma de entrega de emails del mundo.<\/div>\r\n                            <\/div>\r\n        \r\n        <div class=\"text-start mt-5\"><a href=\"https:\/\/signup.mailgun.com\/new\/signup\"  class=\"btn btn-secondary\" >Get started<\/a><\/div>\r\n    <\/aside>\r\n\r\n","protected":false},"excerpt":{"rendered":"<p>Cuando empec\u00e9 en la programaci\u00f3n, recuerdo debatir si quer\u00eda aprender ASP.NET o PHP. Le\u00ed miles de hilos en foros sobre cada lenguaje para ayudarme a tomar una decisi\u00f3n.<\/p>\n","protected":false},"author":34,"featured_media":4074,"menu_order":0,"template":"","meta":{"_acf_changed":true,"footnotes":""},"blog_category":[20],"class_list":["post-20423","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog_category-email"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP - Transactional Email API Service For Developers | Mailgun<\/title>\n<meta name=\"description\" content=\"Utilizar Mailgun en tu entorno PHP es f\u00e1cil, pero hay mucho material desactualizado con respecto a PHP. Por suerte, estos sencillos ejemplos te explicar\u00e1n qu\u00e9 hacer.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP - Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"og:description\" content=\"Utilizar Mailgun en tu entorno PHP es f\u00e1cil, pero hay mucho material desactualizado con respecto a PHP. Por suerte, estos sencillos ejemplos te explicar\u00e1n qu\u00e9 hacer.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/\" \/>\n<meta property=\"og:site_name\" content=\"Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-14T23:34:41+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Email.png\" \/>\n\t<meta property=\"og:image:width\" content=\"720\" \/>\n\t<meta property=\"og:image:height\" content=\"448\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/email\\\/php-como-usar-mailgun-eficazmente\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/email\\\/php-como-usar-mailgun-eficazmente\\\/\",\"name\":\"C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP - Transactional Email API Service For Developers | Mailgun\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/email\\\/php-como-usar-mailgun-eficazmente\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/email\\\/php-como-usar-mailgun-eficazmente\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Email.png\",\"datePublished\":\"2022-09-26T00:00:00+00:00\",\"dateModified\":\"2026-09-14T23:34:41+00:00\",\"description\":\"Utilizar Mailgun en tu entorno PHP es f\u00e1cil, pero hay mucho material desactualizado con respecto a PHP. Por suerte, estos sencillos ejemplos te explicar\u00e1n qu\u00e9 hacer.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/email\\\/php-como-usar-mailgun-eficazmente\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/email\\\/php-como-usar-mailgun-eficazmente\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/email\\\/php-como-usar-mailgun-eficazmente\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Email.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Email.png\",\"width\":720,\"height\":448},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/email\\\/php-como-usar-mailgun-eficazmente\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"description\":\"Potentes API de email transaccional que te permiten enviar, recibir y hacer seguimiento de emails, creadas pensando en los desarrolladores. \u00a1Descubre m\u00e1s!\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#organization\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"width\":512,\"height\":512,\"caption\":\"Transactional Email API Service For Developers | Mailgun\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP - Transactional Email API Service For Developers | Mailgun","description":"Utilizar Mailgun en tu entorno PHP es f\u00e1cil, pero hay mucho material desactualizado con respecto a PHP. Por suerte, estos sencillos ejemplos te explicar\u00e1n qu\u00e9 hacer.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/","og_locale":"es_ES","og_type":"article","og_title":"C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP - Transactional Email API Service For Developers | Mailgun","og_description":"Utilizar Mailgun en tu entorno PHP es f\u00e1cil, pero hay mucho material desactualizado con respecto a PHP. Por suerte, estos sencillos ejemplos te explicar\u00e1n qu\u00e9 hacer.","og_url":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/","og_site_name":"Transactional Email API Service For Developers | Mailgun","article_modified_time":"2026-09-14T23:34:41+00:00","og_image":[{"width":720,"height":448,"url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Email.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/","url":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/","name":"C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP - Transactional Email API Service For Developers | Mailgun","isPartOf":{"@id":"https:\/\/www.mailgun.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/#primaryimage"},"image":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/#primaryimage"},"thumbnailUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Email.png","datePublished":"2022-09-26T00:00:00+00:00","dateModified":"2026-09-14T23:34:41+00:00","description":"Utilizar Mailgun en tu entorno PHP es f\u00e1cil, pero hay mucho material desactualizado con respecto a PHP. Por suerte, estos sencillos ejemplos te explicar\u00e1n qu\u00e9 hacer.","breadcrumb":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/#primaryimage","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Email.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Email.png","width":720,"height":448},{"@type":"BreadcrumbList","@id":"https:\/\/www.mailgun.com\/es\/blog\/email\/php-como-usar-mailgun-eficazmente\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.mailgun.com\/es\/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https:\/\/www.mailgun.com\/es\/blog\/"},{"@type":"ListItem","position":3,"name":"C\u00f3mo preparar r\u00e1pidamente Mailgun con PHP"}]},{"@type":"WebSite","@id":"https:\/\/www.mailgun.com\/es\/#website","url":"https:\/\/www.mailgun.com\/es\/","name":"Transactional Email API Service For Developers | Mailgun","description":"Potentes API de email transaccional que te permiten enviar, recibir y hacer seguimiento de emails, creadas pensando en los desarrolladores. \u00a1Descubre m\u00e1s!","publisher":{"@id":"https:\/\/www.mailgun.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.mailgun.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.mailgun.com\/es\/#organization","name":"Transactional Email API Service For Developers | Mailgun","url":"https:\/\/www.mailgun.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.mailgun.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","width":512,"height":512,"caption":"Transactional Email API Service For Developers | Mailgun"},"image":{"@id":"https:\/\/www.mailgun.com\/es\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/20423","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/users\/34"}],"version-history":[{"count":0,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/20423\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/media\/4074"}],"wp:attachment":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/media?parent=20423"}],"wp:term":[{"taxonomy":"blog_category","embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog_category?post=20423"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}