Skip to content

Instantly share code, notes, and snippets.

@ojgarciab
Forked from ealbinu/gist:3080619
Last active November 17, 2021 10:47
Show Gist options
  • Save ojgarciab/32d085858d0a469f6842ee78b82a4666 to your computer and use it in GitHub Desktop.
Save ojgarciab/32d085858d0a469f6842ee78b82a4666 to your computer and use it in GitHub Desktop.
Correo con PHP utilizando mail() codificado en UTF-8
<?php
$correo_destinatario = "";
$nombre_remitente = "";
$correo_remitente = "";
$asunto = "";
$mensaje = "";
/* Hacemos uso de mb_encode_mimeheader para codificar correctamente caracteres especiales */
$headers = 'From: "' . mb_encode_mimeheader($nombre_remitente) . '" <' . $correo_remitente . ">\r\n"
. 'Reply-To: ' . $correo_remitente . "\r\n"
. 'X-Mailer: PHP/' . phpversion() . "\r\n";
function mailutf8(
$correo_destinatario,
$asunto = "(Sin Asunto)",
$mensaje = "",
$header = ""
) {
/* Estas son las cabeceras básicas para el envío de UTF-8 usando codificación de 8 bits */
$header_on = "MIME-Version: 1.0\r\nContent-type: text/html; charset=\"UTF-8\"\r\nContent-Transfer-Encoding: 8bit\r\n";
return mail(
$correo_destinatario,
mb_encode_mimeheader($asunto),
$mensaje,
$header_on . $header
);
}
/* Enviamos el correo y mostramos un mensaje dependiendo de la salida de la función mail */
echo mailutf8($correo_destinatario, $asunto , $mensaje, $headers) ? "Mensaje enviado" : "Error en el envío";
@Alien14k
Copy link

Maravilloso! Me funcionó a la primera

@ojgarciab
Copy link
Author

ojgarciab commented Nov 17, 2021

Maravilloso! Me funcionó a la primera

Gracias @Alien14k , me alegra que te sirviera.

Te recomiendo usar PHPMailer. Este gist lo creé únicamente con el propósito de mejorar/corregir el código de otro gist.

PD: Deberías revisar el enlace a tu web personal en github. La página http://www.baraxel.com/ no existe.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment