使用 unicode 字符串时,确保在各个阶段进行正确处理至关重要,包括存储在数据库、检索和在网页上显示。本文解决了开发人员在源自 MySQL 数据库的 PHP 脚本中显示印地语文本时遇到困难所面临的问题。
初始设置涉及使用 UTF-8 编码和 utf8_bin 排序规则创建数据库,添加 varchar使用 UTF-8 字符集的字段,并尝试直接插入印地语文本“सूर्योदय:05:30”。然而,在使用 echo(utf8_encode($string)) 获取并显示数据时,浏览器返回“??????.”
此行为的原因在于字符编码不匹配。文本“सूर्योदय”应存储为 UTF-8,但它是直接从可能以不同格式编码的源复制的。要解决这个问题,可以采用两种方法:
$result = mysql_query("SET NAMES utf8"); $cmd = "select * from hindi"; $result = mysql_query($cmd);
通过使用这两种方法中的任何一种,印地语文本都可以正确存储在数据库中并在网页上正确呈现。
关于将印地语文本转换为 HTML 字符代码的脚本,您可以搜索提供此功能的在线工具或库。此外,HTML字符代码网站(例如,https://www.w3schools.com/charsets/ref_html_utf8.asp)可用于获取特定Unicode字符的字符代码。
需要注意的是,当要在网页上显示印地语字符,必须在 HTML 标头中指定字符集或使用 PHP 标头命令以确保浏览器正确解释文本。
以上是如何在 PHP 和 MySQL 中正确存储和显示 Unicode 印地语字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!