2015-03-13 74 views
0

我有UTF8的数据库和一切,如果很好,除了一件事 - 当我写入文件$ mysqli-> connect_error,它是写在cp1251,而不是utf8。MySQLi错误消息编码

if ($mysqli->connect_errno) 
    file_put_contents('error.log', 'Ошибка: '.$db->connect_error, FILE_APPEND); 

在文件中,我可以看到'Ошибка:',但随后文本以错误的编码方式。如何为MySQLi错误消息设置utf8?

+0

到底是如何在创建'$ mysqli'连接...? – deceze 2015-03-13 14:02:55

+0

@deceze '$ mysqli = @new mysqli('localhost','root','xxx','mydb'); if(!$ db-> connect_errno)$ mysqli-> set_charset('utf8');' – 2015-03-13 18:13:33

回答

0

的文档可以在这里找到http://php.net/manual/en/mysqli.set-charset.php

OOP方法

$mysqli->set_charset("cp1251"); 

手册approuch

mysqli_set_charset($connection, "utf8"); 
+0

我谈论连接错误。所以我没有连接到DB。你的代码给了我'mysqli :: set_charset():无法获取mysqli'。 – 2015-03-13 18:22:18