在mysql数据库中插入和获取不同的语言

时间:2015-02-26 10:27:24

标签: php mysql sql arrays mysqli

我有两个文件:config.php和add.php我试图在数据库中插入英文和俄文数据。

config.php的代码

<?php
header('Content-Type: text/html; charset=utf-8' );
$link = mysql_connect('asd','asd','asd') or die('Cannot connect to the DB');
mysql_select_db('asd',$link) or die('Cannot select the DB');

mysql_query("set character_set 'utf8'");
mysql_set_charset("utf8", $link);

echo mysql_client_encoding($link);
printf( "MySQL server version: %s\n", mysql_get_server_info());
?>

配置中最后两行的输出为:

utf8
MySQL server version: 5.1.72-rel14.10

从add.php页面我得到一个数组:

Array
(
    [0] => Array
        (
            [message] => Registered
            [detail] => Array
                (
                    [id] => 54
                    [name] => Настройки
                )
        )
)       

现在我尝试将其转换为JSON

echo json_encode($posts,128);

但是我输出了\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438作为名称,数据库排序规则在utf8_general_ci中,数据库中的条目格式正确,但我无法以正确的形式获取数据。

注意:请忽略SQL,我稍后会更改。

1 个答案:

答案 0 :(得分:1)

您可以尝试:

echo json_encode($posts, JSON_UNESCAPED_UNICODE);