Lección 10: E-Mails

Enviar email en texto plano

mail(string $email_destinatario, string $asunto, string $mensaje, array $headers[]);

En el ejemplo indicamos, por medio de cabeceras, la dirección del emisario (nosotros por medio de From) y configuramos el correo para que admita acentos o carácteres especiales del español (Content-type).

$headers = [
    'From' => 'curso@php.com',
    'Content-type' => 'text/plain; charset=utf-8'
];
mail('correo@falso.com', 'Día especial', 'Gracias por suscribirte', $headers);

Los saltos de línea se realizan con "\n".

8-1

Enviar email en HTML

No varía mucho el procedimiento, tan solo hay que indicar en la cabecera del Content-type que admita HTML y añadir MIME-Version.

// Nuestro mensaje debe ser HTML
$mensaje = '
<html>
<head>
  <title>Feliz día del SPAM</title>
</head>
<body>
  <p>¿Qué tal?</p>
  <table>
    <tr>
      <th>Usuario</th>
      <th>Apellido</th>
      <th>Nacimiento</th>
    </tr>
    <tr>
        <td>Barba</td>
        <td>Negra</td>
        <td>1718</td>
    </tr>
  </table>
</body>
</html>
';

// Define que será de tipo será nuestro mensaje: HTML. Y la dirección del emisor.
$headers = [
    'MIME-Version' => '1.0',
    'Content-type' => 'text/html; charset=utf-8',
    'From' => 'curso@php.com'
];

// Lo enviamos
mail('correo@falso.com', 'Día especial', $mensaje, $headers);

8-2