Мое приложение работает с CI, и для доставки электронной почты я использую Sendgrid API.
Я намерен использовать API SendGrid в качестве библиотеки, поэтому я могу загрузить его следующим образом: $this->load->library('my_ci_lib');
При поиске некоторых примеров единственный результат, который я обнаружил, - это настройка конфигураций SMTP Sendgrid в библиотеке электронной почты Native CI и его расширение.
Как использовать API Sendgrid в CI?
Это я использовал для использования API Sendgrid в сыром PHP:
<code><?php
require_once('../../class/SendGrid/sendgrid-php.php');
function welcomeEmail($email, $firstName, $password){
require_once('_key.php');
$chaves = array('{name}', '{key}');
$template = utf8_decode(file_get_contents('../../templates/welcomePass.html'));
$template = str_replace($chaves, array(utf8_decode($firstName), $password), $template);
// $mail->SetFrom('no-reply'.rand(1, 100).'@domain.com.br', 'Domain');
// $mail->Subject = utf8_decode('Seja bem-vindo(a)!');
// $mail->Body = $template;
// $mail->isHTML(true);
// $mail->addTo($email);
// //$mail->SMTPDebug = 3;
$mail = new \SendGrid\Mail\Mail();
$mail->setFrom("connectz.no-reply".rand(1, 100)."@domain.com.br", "CONNECTZ");
$mail->setSubject("Seja bem-vindo(a)!");
$mail->addTo($email);
$mail->addBcc("joao.souza@domain.com.br");
$mail->addContent("text/html", utf8_encode($template));
$sendgrid = new \SendGrid($key);
$response = $sendgrid->send($mail);
// print $response->statusCode() . "<br>";
// echo '<pre>'.print_r($response->headers()).'
';// напечатать $ response-> body ()."";}