解析Yii中的URL

解析Yii中的URL,yii,yii-url-manager,Yii,Yii Url Manager,如何解析格式如下所示的Url http://localhost/CorrectCodeToDeploy/healthkatta/index.php?r=site%2FArticle%2F2013%2F07%2F13%2FDisadvantages-of-smoking-51e12690a5a58 想去掉特殊字符%2F,改为使用/。我分享了一篇文章到facebook的链接 但是,当我从facebook访问此链接时,它的格式与上面提到的相同,并且内容在Yii中没有正确访问。我如何编写模式以在Yii

如何解析格式如下所示的Url

http://localhost/CorrectCodeToDeploy/healthkatta/index.php?r=site%2FArticle%2F2013%2F07%2F13%2FDisadvantages-of-smoking-51e12690a5a58
想去掉特殊字符
%2F
,改为使用
/
。我分享了一篇文章到facebook的链接

但是,当我从facebook访问此链接时,它的格式与上面提到的相同,并且内容在Yii中没有正确访问。我如何编写模式以在Yii中访问此类url呢

$_GET = array_map('urldecode', $_GET);
请注意,上述方法不适用于嵌套数组,因此您需要创建一个更深入的递归函数,如(未经测试):


当我点击在facebook上发布的链接时,我得到了那个URL。据我所知,你在FB上发布了你的链接。试着用代码对url进行解码/编码,把你们的链接发送到FB。我刚刚做了。Yii有index.php文件,它是引导文件。在需要yii框架之前,将其添加到那里。
function urldecodeArray($strArr){
    if (!is_string($strArr) && !is_array($strArr)) {
       return $strArr;
    }
    if(is_string($strArr)) {
        return urldecode($strArr);
    }
    foreach ($strArr as $key=>$value) {
       $strArr[$key] = urldecodeArray($value);
    }
    return $strArr;
}
$_GET = urldecodeArray($_GET);