如何在MySQL中使用印地语和古吉拉特语语言获取数据?

时间:2016-10-07 06:13:55

标签: php mysql arrays json

在我的代码下面,我尝试这个解决方案,但不能正常工作。我也为hindi提供 utf8_unicode_ci ,为数据库整理提供古吉拉特语的 utf8_bin

请帮助我如何获取数据Hindi&古吉拉特语。

 <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<?php
session_start();
        require_once('config.php'); 
        $JSONoutput = array();
        $q=mysqli_query($con,"SELECT * FROM tbl_Hindi");


    header('Content-Type: text/html; charset=UTF-8');
            while($rs=mysqli_fetch_assoc($q))
            {
                $JSONoutput['SMS'][] = array("ID"=>$rs['ID'],"Message"=>$rs['Message']);
            }
            print(json_encode($JSONoutput));
    ?>

输出:

{"SMS":[{"ID":"1","Message":"?? ????? ?? ??? ???? ??, ???? ?? ???? ??? ?? ????? ?? ?? ???? ?? ??????"},{"ID":"2","Message":"???? ????? : ??? ???? ?? ? ????? ????? : shopping ???? ?? ??? ???? ????? : : ???? ?? ???? ? ????? ????? : ???? ??? ??? ?? Gf ?? ? ???? ????? : ?? ?? ??? ??? ?? ? ????? ????? : ?? ???? "}]}

2 个答案:

答案 0 :(得分:1)

  1. 您的sql表更改字段格式更改语言集合 utf16_general_ci所有语言接受。
  2. ALTER TABLE tbl_Hindi CHANGE Message Message VARCHAR(50)CHARACTER SET utf16 COLLATE utf16_general_ci NOT NULL;

    尝试此查询

答案 1 :(得分:0)

参见https://stackoverflow.com/a/38363567/1766831 - 特别是&#34;问号&#34;的讨论。它说

  • 要存储的字节不编码为utf8 / utf8mb4。解决这个问题。
  • 数据库中的列是CHARACTER SET utf8(或utf8mb4)。解决这个问题。
  • 另外,检查读取时的连接是否为UTF-8。

问号已存在于数据库表中;原始数据丢失了。

我们ucs2或utf16;仅使用utf8或utf8mb4。