This website uses cookies

Our website, platform and/or any sub domains use cookies to understand how you use our services, and to improve both your experience and our marketing relevance.

La Agencia de Nueva Generación ya está aquí. Únete a más de 3.000 profesionales de agencias en Agency Advantage 2026. Regístrate gratis→

Cómo enviar correo electrónico en CodeIgniter con SMTP

Actualizado el August 26, 2025

3 Min Read

Hoy en día, casi todos los frameworks PHP soportan una biblioteca de gestión de correo electrónico bien desarrollada. CodeIgniter no es diferente, ya que tiene una gran clase de envío de correo electrónico que garantiza que los proyectos CodeIgniter puedan enviar correos electrónicos sin dificultad.

Este artículo describirá cómo enviar correos electrónicos en una aplicación CodeIgniter utilizando SMTP. Utilizaré la conocida y mantenida clase de envío de correos electrónicos.

Cargar la clase de correo electrónico de CodeIgniter

En primer lugar, carga la biblioteca de correo electrónico de CodeIgniter mediante el siguiente fragmento de código:

$this->carga->biblioteca('email');

Establecer parámetros de correo electrónico

El siguiente paso es configurar los campos necesarios para el correo electrónico personalizado. Estos campos pueden configurarse mediante varias funciones, entre ellas la función from() toma dos parámetros: la dirección de correo electrónico del remitente y el nombre. la función to() toma la dirección de correo electrónico del destinatario. Las dos funciones siguientes, subject() y message(), completan los requisitos para enviar correos electrónicos en CodeIgniter. He aquí cómo se utilizan estas funciones en el código:

$this->correo electrónico->de('[email protected]', 'Identificación');
$this->correo electrónico->a('[email protected]');
$this->correo electrónico->subject('Enviar correo electrónico Codeigniter');
$this->correo electrónico->message('El correo electrónico se envía utilizando la biblioteca codeigniter');

Deja de perder el tiempo con los servidores

Cloudways se encarga de la gestión del servidor por ti para que puedas centrarte en crear grandes aplicaciones y mantener contentos a tus clientes.

Una vez rellenadas estas funciones, el paso final es enviar el correo electrónico utilizando la función send().

$this->correo electrónico->enviar();

Crear el controlador

Crea un archivo controlador Sendingemail_controller.php y guárdalo en application/controller/. Añade el siguiente código a este archivo:

<?php
class Controlador_de_envío_Correo extends Controlador_CI {
  función __construct() {
  padre::__construct();
  $this->carga->biblioteca('sesión');
  $this->carga->ayudante('formulario');
  }
  función pública index() {
  $this->carga->ayudante('formulario');
  $this->carga->view('formulario_email_contacto');
  }
  función pública send_mail() {
  $correo_desde = "[email protected]";
  $a_email = $este->entrada->post('email');
  /Cargar biblioteca de correo electrónico
  $this->carga->biblioteca('email');
  $this->correo electrónico->from($correo_de_from, 'Identificación');
  $this->correo electrónico->to($a_email);
  $this->correo electrónico->subject('Enviar correo electrónico Codeigniter');
  $this->correo electrónico->message('El correo electrónico se envía utilizando la biblioteca codeigniter');
  //Enviar correo
  if($this->correo electrónico->enviar())
  $this->sesión->set_flashdata("email_enviado", "Envío correcto del correo electrónico de la Congragulación");
  si no
  $this->sesión->set_flashdata("email_enviado", "Has encontrado un error");
  $this->carga->view('formulario_email_contacto');
  }
}
?>

Crear la vista

Crea un archivo de vista llamado contact_email_form.php y guárdalo en aplicación/vistas/. Añádele el código siguiente

<html>
<cabeza>    
    <título>  Enviar Email Codeigniter  </title>
</head>
<cuerpo>
<?php
echo $esto->sesión->flashdata('email_enviado');
echo form_open('/Controlador_de_envío_de_correo');
?>
<input type = "email" name = "email" required />
<input type = "submit" value = "ENVIAR CORREO">
<php
echo form_close();
?>
</body>
</html>

Realiza los cambios en el archivo routes.php en application/config/routes.php y añade la siguiente línea al final del archivo:

$route['email'] = 'Controlador_Correo';

Acceder a la aplicación de correo electrónico

Por último, pulsa la siguiente URL para acceder a la aplicación:

http://your-domain.com/index.php/email

Establecer la configuración SMTP

Como ya hemos mencionado, CodeIgniter es totalmente compatible con diferentes protocolos de correo electrónico, incluido SMTP, mediante sencillas opciones de configuración.

Como puedes ver en el siguiente fragmento de código, seleccionar el protocolo de correo electrónico es cuestión de establecer una única variable de configuración. En este fragmento de código, he establecido $config[‘protocolo’] en SMTP para utilizar el protocolo SMTP.

<?php
$this->carga->biblioteca('email');

$config = array();
$config['protocolo'] = 'smtp';
$config['smtp_host'] = 'xxx';
$config['smtp_user'] = 'xxx';
$config['smtp_pass'] = 'xxx';
$config['smtp_port'] = 25;
$this->correo electrónico->inicializar($config);

$this->correo electrónico->set_newline("\r\n");

Resumen

Añadir funcionalidad de correo electrónico a las aplicaciones CodeIgniter desplegadas en cualquier alojamiento Web para PHP es muy sencillo con la biblioteca de correo electrónico. Todo lo que tienes que hacer es establecer unas pocas variables, y el correo electrónico estará configurado. Si necesitas ayuda para enviar correos electrónicos en tus aplicaciones CodeIgniter, deja un comentario más abajo, y me pondré en contacto contigo.

Share your opinion in the comment section. COMMENT NOW

Share This Article

Start Growing with Cloudways Today.

Our Clients Love us because we never compromise on these

Hani Shoaib

Hani es Directora Senior de Marketing de Producto en Cloudways, con más de 3 años de experiencia en cloud hosting y marketing SaaS. Está especializada en traducir conceptos técnicos complejos en narrativas convincentes que resuenen en agencias, desarrolladores y empresas. Apasionada por ayudar a las empresas a ampliar su presencia digital, Hani aporta un enfoque estratégico al posicionamiento del producto, las estrategias de salida al mercado y la formación de los clientes.

×

Webinar: How to Get 100% Scores on Core Web Vitals

Join Joe Williams & Aleksandar Savkovic on 29th of March, 2021.

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Want to Experience the Cloudways Platform in Its Full Glory?

Take a FREE guided tour of Cloudways and see for yourself how easily you can manage your server & apps on the leading cloud-hosting platform.

Iniciar mi recorrido