我正在使用Codeigniter电子邮件库。 我在塞尔维亚语的数据库中有一些这类字符的数据:žčćšđ 当我在其他地方打印出来时,所有字符都没问题,所以databese将它保存在正确的路上。
我的控制器看起来像这样:
$config['charset'] = 'utf-8';
$this->load->library('email');
$this->email->initialize($config);
foreach($email as $val):
$this->load->library('email');
$this->email->from('rs@svstara.rs', 'Vojvođanska Svaštara - Mali Oglasi');
$this->email->to('daniela.stevanovic@gmail.com');
$this->email->subject($uid);
$this->email->message($tekst);
$this->email->send();
$info=$this->email->print_debugger();
endforeach;
echo json_encode(array('info'=>$info));
当我收到电子邮件时,它看起来像这样:pšđpšđpšđpšđ-čć.- 所以有一些字符,什么是未编码的。
答案 0 :(得分:3)
你必须将字符串编码为UTF-8,即使你期望它们已经是utf-8编码的。试试php mb-convert-encoding
mb_convert_encoding($content, "UTF-8");
答案 1 :(得分:0)
检查文件格式是否也是UTF-8。有时,在使用Eclipse时,它默认设置为ISO-8859。
右键单击文件>
您可以将其应用于所有项目(警告:它可能会分解一些字符)