Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Então, tenho um script que gera um boleto no formato de imagem (usando o imagegif()).
Gostaria de saber se tem como eu enviar esse boleto em anexo (uso phpmailer) sem ter que salvar a imagem em disco. Motivo? Evitar ficar usando disco.
Ou seja, há alguma magica para eu fazer isso?
Uma outra dúvida, na hora de gerar o boleto, posso por exemplo usar ob_start() e ao final pegar com o ob_get para obter a imagem e enviar via anexo?
Acho que ficou confuso rs
Pode sim. A função imagegif() vai exibir na tela. Então precisará criar um buffer pra armazenar o conteúdo em uma variaável
Obrigado.
mail = new PHPMailer();
// ....
ob_clean(); // limpa qualquer coisa no buffer de saída
ob_start();
imagegif($img); // gera a imagem (assumindo que já exista uma imagem em $img)
$gif = ob_get_clean(); // $gif agora contém a imagem gerada
$mail->AddStringAttachment($gif, 'boleto.gif'); // 'boleto.gif' é o nome do anexo que vai aparecer no e-mail
Nenhuma mágica. Só usar o método addStringAttachment do PHPMailer
Veja:
http://wp-a2z.com/oik_api/phpmaileraddstringattachment/
http://stackoverflow.com/questions/2128931/php-mailer-attachments-not-sending-properly