在Android和PHP中支持UTF 8



我正在使用 UTF8 支持在我的应用程序中显示印地语字符。但是当我这样做时,我在 PHP 中得到了这个结果

u0939u094du0926u094bu0926

当我在安卓中得到正确的印地语字母时。我的问题是我想在Android应用程序和PHP网页中显示印地语字符。

我在PHP文件中使用了这一行,该文件在Android中给出了印地语字符

$row = mysql_query("SET NAMES utf8");

请在下面给出的PHP代码中提出一些更改

<?php
header('Content-type: text/php; charset=utf-8');
mysql_connect("host","root","pwd");
mysql_select_db("db_name");
$row = mysql_query("SET NAMES utf8");
$sql=mysql_query("select * from t1 ORDER BY timestamp DESC Limit 50");
while($row=mysql_fetch_assoc($sql)) {
$output[]=$row;
}
$countries = array('countries' => $output);
echo json_encode($countries);
  mysql_close();
?>

如果您想直接在"网页"中显示这些字符,我不确定您期待什么以及为什么要使用json_encode。您在页面上看到的内容可能只是一个完全有效的json_encoded结果,因此,如果您想对结果进行json_encoded表示,一切似乎都很好。

如果要在html中显示字符,则可以将它们打印出来,而不是使用json_encode

如果你想在php中使用json_encoded unicode字符(我认为这不是你想要实现的,但无论如何......),你必须使用json_decode,例如,你可以打印出一个unicode字符,如下所示:

echo json_decode('"u00fc"');

最新更新