Android和PHP中支持UTF 8

时间:2013-12-20 09:30:52

标签: php android

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

\u0939\u094d\u0926\u094b\u0926\

当我在Android中获得正确的印地语字母时。我的问题是我想在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();
?>

1 个答案:

答案 0 :(得分:0)

如果您想直接在“网页”中显示这些字符,我不确定您的期望是什么以及您使用json_encode的原因。你在页面上看到的可能只是一个完全有效的json_encoded结果,所以如果你想要一个json_encoded表示你的结果一切都很好。

如果你想在html中显示字符,你可以打印出来而不是使用json_encode

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

echo json_decode('"\u00fc"');