我有一个在codeigniter中开发的网站,我想在一个包含utf8字段的表格中将数据插入我的数据库中。
问题是,当我在表格中插入内容时,我看到:
�"�h�t�t�p�:�/�/�I�m�a�g�e�1�.�u�r�l�f�o�r�i�m�a�g�e�s�.�c�o�m�/�D�e�f�a�u�l�t�/�8�8�0�4�/�2�3�6�9�2�2�6�2�-�1�8�4�3�3�8�5�2�6�6�.�j�p�g�"�
还有更多角色。真正的字符串是一个简单的路径。我不知道字符串的格式,因为它来自外部服务器。
这是我插入记录的查询。我从xml中获取字符串,如果我在页面中打印它,我会看到正确的字符串。每当我在数据库中检查时都会出现问题:
foreach($img->childNodes as $node){
$data = array(
'image'=>$node->getAttribute('path'),
);
$this->db->insert('hotel_images',$data);
}
答案 0 :(得分:1)
该数据不是UTF-8。它是UCS-2或UTF-16。 UCS-2是UTF-16的子集,因此将其视为UTF-16应该可以解决问题。
您可以使用iconv转换它。
$data = iconv("UTF-16", "UTF-8", $data);