Criei uma library de funções para automatizar algumas tarefas corriqueiras
do meu site. Uma delas, é o e-mail.
Aprendi pela documentação do CI que, caso eu queira chamar uma libary dentro
de outra, eu devo faze-lo à partir de uma cópia da instância do CI. Eles
mandam usar a atribuição $CI =& get_instance();.
Tudo muito bom, tudo muito bem, mas já que eu normalmente deverei chamar
libraries dentro dessa library, nada mais justo do que essa "copiada" de
instancia aconteça em um parâmetro global para que todas as funções da minha
library tenham acesso.
Logo, eu, muito malandramente, criei na classe um parâmetro protected
chamado $CI. No construtor da classe, eu "copio" a instancia do CI para a
variável para, futuramente, utilizar na função que for precisar.
O erro deve estar sendo muito idiota mas, na pressa, não achei. Coloquei uns
echo pelo código para tentar debugar o que rola e o output é simplesmente
que consigo printar o que a variável $CI do construtor, mas no método
enviarEmail, eu não consigo printar...
Alguém pode me dar essa luz?
class Funcoes {
protected $CI;
public function __construct() {
$CI =& get_instance();
echo "primeiro \$CI: ";
print_r($CI);
}
public function enviarEmail($msg,$para,$assunto="Mensagem sem
título",$cc=NULL,$bcc=NULL){
echo "segundo \$CI: ";
print_r($CI);
die();
$CI->load->library('email');
$CI->email->from('[email protected]');
$CI->email->to($para);
$CI->email->cc($cc);
$CI->email->bcc($bcc);
$CI->email->subject($assunto);
$CI->email->message($msg);
return $CI->email->send();
}
}
--
Daniel Medina
_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------