我在utf8字上使用了rawurlencode。 例如
$tit = 'தேனின் "வாசம்"';
$t = (rawurlencode($tit));
当我点击utf8单词($ t)时,我将使用.htaccess转移到另一个页面,我使用$ _GET ['word']获取utf8单词;
单词显示为தேனàà¿à®©à_“ààμாசம௔而非实际单词。我怎样才能获得实际的utf8字样。我使用了标头charset = utf-8。
答案 0 :(得分:0)
您使用rawurldecode($_GET['word']);
了吗?你是否对你的PHP文件使用UTF-8编码?
答案 1 :(得分:0)
我的评论是第一位的,但应该是一个答案:
magic_quotes
已关闭?如果它在2011年仍然存在,那将会很奇怪。但你应该检查并做stripslashes
。
答案 2 :(得分:0)
<?php
$s1 = <<<EOD
தேனினà¯_"வாசமà¯"
EOD;
$s2 = <<<EOD
தேனின் "வாசம்"
EOD;
$s1 = mb_convert_encoding($s1, "WINDOWS-1252", "UTF-8");
echo bin2hex($s1), "\n";
echo bin2hex($s2), "\n";
echo $s1, "\n", $s2, "\n";
输出:
e0aea4e0af87e0aea9e0aebfe0aea9e0af5f22e0aeb5e0aebee0ae9ae0aeaee0af22 e0aea4e0af87e0aea9e0aebfe0aea9e0af8d2022e0aeb5e0aebee0ae9ae0aeaee0af8d22 தேனின��_"வாசம��" தேனின் "வாசம்"
您可能只是没有将数据显示为UTF-8,并且您将其显示为ISO-8859-1或类似数据。