0

全部。我在PHP 5.2.x中有不同的函数urldecode()行为。尤其是您将能够以 Wikipedia 为例来查看它。

首先,我有该函数结果的页面有元:

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

比我使用的功能:

$url = urldecode($url);
echo $url;

这是 $url 变量的示例:

怎么了?为什么?我试图在 PHP 网站上使用 function.urldecode.php 中的所有函数,但它没有给我任何成功的结果

这是在 PHP 中测试的代码的快速示例:

<?php
$url = array();

$url[] = "http://ru.wikipedia.org/wiki/%D0%91%D1%80%D0%B5%D1%81%D1%82";
$url[] = "http://ru.wikipedia.org/wiki/%CC%EE%EB%EE%E4%E5%F7%ED%EE";

foreach ($url as $value) :
    echo urldecode($value) . "<br/>";
endforeach;
?>

提前致谢!

4

2 回答 2

4

不确定您在哪里获取了该网址,但“Молодечно”的正确 utf-8 格式是:

$url = 'http://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D0%BB%D0%BE%D0%B4%D0%B5%D1%87%D0%BD%D0%BE';

echo urldecode($url);

你的是cp1251编码的

于 2011-07-10T09:30:04.147 回答
1

正如 zerkms 所说,以下 url 是 cp1251 编码的。要将其转换为 UTF-8,只需使用以下命令:

 $url = 'http://ru.wikipedia.org/wiki/%CC%EE%EB%EE%E4%E5%F7%ED%EE';
 echo iconv("Windows-1251","UTF-8",urldecode($url));

 //output:  Молодечно
于 2011-07-10T09:33:04.370 回答