相关疑难解决方法(0)

使用PHP和MySQL存储和显示unicode字符串(हिन्दी)

我必须将hindi文本存储在MySQL数据库中,使用PHP脚本获取它并将其显示在网页上.我做了以下事情:

我创建了一个数据库并将其编码设置为UTF-8,并将其排序为utf8_bin.我在表中添加了一个varchar字段,并将其设置为接受charset属性中的UTF-8文本.

然后我开始向它添加数据.在这里,我不得不从现有网站复制数据.印地文文本如下:सूर्योदय:05:30

我直接将此文本复制到我的数据库中,并使用PHP代码echo(utf8_encode($string))显示数据.这样浏览器显示"??????".

但是,当我通过浏览器中的"查看源"插入UTF等效文本时,सूर्योदय会转换为सूर्योदय.

如果我进入并存储सूर्योदय在数据库中,它将完美转换.

所以我想知道的是我如何直接将सूर्योदय存储到我的数据库中并获取它并使用PHP在我的网页中显示它.

此外,任何人都可以帮助我理解是否有一个脚本,当我输入सूर्योदय时,给我सूर्योदय

找到解决方案

我写了以下示例脚本,它对我有用.希望它也可以帮助其他人

<html>
  <head>
    <title>Hindi</title></head>
  <body>
    <?php
      include("connection.php"); //simple connection setting
      $result = mysql_query("SET NAMES utf8"); //the main trick
      $cmd = "select * from hindi";
      $result = mysql_query($cmd);
      while ($myrow = mysql_fetch_row($result))
      {
          echo ($myrow[0]);
      }
    ?>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我的数据库存储hindi utf字符串的转储是

CREATE TABLE `hindi` (
  `data` varchar(1000) character set utf8 collate utf8_bin default NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO …
Run Code Online (Sandbox Code Playgroud)

php mysql unicode utf-8 internationalization

47
推荐指数
3
解决办法
11万
查看次数

将分数转换为html实体

我们在数据库中存储了一些分数信息,例如¾½

没有进行搜索和替换,是否有任何内置的PHP函数会自动将这些函数转换为正确的html实体?

html php string html-entities fractions

7
推荐指数
1
解决办法
1887
查看次数