有特殊字符,如PHP的ñ(php with special characters like ñ)

2019-08-02 07:06发布

起初我以为这个问题是,当我从一个Ajax调用与n个结果被更改为NULL返回的回声json_encode($行)。 但是经过测试,我发现这个问题之前存在的方式。

与样品php文件:

$test = "Nuñez"
echo $test

结果就是Nuez

我搜索周围,但没有建议的解决方案的工作。 喜欢:

mb_internal_encoding('UTF-8');
mb_http_output('UTF-8');
mb_http_input('UTF-8');
mb_language('uni');
mb_regex_encoding('UTF-8');
ob_start('mb_output_handler');

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />header('content-type: text/html; charset: utf-8'); 。 而一些更多的解决方案,我已经忘了,相信我,我尝试了很多。

这只是,我希望,因为我的数据库中,将不会与MySQL的问题它开始UTF-8等是我$ mysqli的字符集。 但是我觉得我不能说对Ajax json_encode相同。 但是没关系,每次一个问题。 任何人都可以请帮助我。 非常感谢!

问题就解决了我不得不设置“编码为UTF-8”在记事本++,因为它以前是“编码的ANSI”。

Answer 1:

为了我

$test = "Nuñez";
echo $test;

显示努涅斯

你可以试试

$test = "Nuñez";
echo utf8_decode($test);

要么

$test = utf8_encode("Nuñez");
echo utf8_decode($test);


Answer 2:

试试这个

它为我工作。

$test = "Nuñez";

echo html_entity_decode(htmlentities($test));


Answer 3:

显示正确的拉丁字符像N N A E I O U,等等。在浏览器中,你必须使用ISO-8859-1,而不是UTF-8编码的http://www.w3schools.com/tags/ref_entities.asp

最好的祝福!



Answer 4:

当您连接到您的MySQL数据库,设置字符集为UTF-8,喜欢 - >

$sql_con = mysql_connect($sql_host, $sql_user, $sql_pass);
mysql_query('SET NAMES utf8');


Answer 5:

考虑设置DEFAULT_CHARSET,这个工作对我来说

函数ini_set( 'DEFAULT_CHARSET', 'UTF-8');



文章来源: php with special characters like ñ