使用php在另一个页面中获取utf8 url编码字符


get utf8 urlencoded characters in another page using php

我在utf8字上使用了rawurlencode。例如

$tit = 'தேனின் "வாசம்"';
$t = (rawurlencode($tit)); 

当我点击utf8字($t)时,我将使用。htaccess转移到另一个页面,我使用$_GET['word'];

获得utf8字

显示这个词作为®¤一¯‡一®©一个害怕®®©一¯_"®µ一®¾一®š一®®¯"不是实际的词。我怎样才能得到实际的utf8字。我使用了标题字符集=utf-8

是我的第一个评论,但应该是一个答案:

magic_quotes off?如果2011年还在播,那就太奇怪了。但是你应该检查并做stripslashes

您使用rawurldecode($_GET['word']);了吗?PHP文件使用UTF-8编码吗?

<?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";
输出:

<>之前e0aea4e0af87e0aea9e0aebfe0aea9e0af5f22e0aeb5e0aebee0ae9ae0aeaee0af22e0aea4e0af87e0aea9e0aebfe0aea9e0af8d2022e0aeb5e0aebee0ae9ae0aeaee0af8d22தேனின��_"வாசம��"தேனின்"வாசம்"之前

您可能只是没有将数据显示为UTF-8,而将其显示为ISO-8859-1或类似的格式。