2013-07-19 4 views
0

Как разобрать URL-адрес, который в формате, как показаноСинтаксический URL в Yii

http://localhost/CorrectCodeToDeploy/healthkatta/index.php?r=site%2FArticle%2F2013%2F07%2F13%2FDisadvantages-of-smoking-51e12690a5a58 

Хотите избавиться от специальных символов %2F и положить / вместо этого. Я поделился ссылкой статьи на facebook
, но когда я получаю доступ к этой ссылке из facebook, она поставляется в формате, указанном выше, и содержимое не доступно в Yii.Как я могу написать шаблон для доступа к этому типу URL-адреса в Yii

ответ

1

может быть, вы можете напрямую декодировать ваш $ _GET в файле index.php, что-то вроде:

$_GET = array_map('urldecode', $_GET); 

Пожалуйста, обратите внимание выше, не работайте с вложенными массивами, поэтому вам нужно создать более глубокую рекурсию SIVE функция, как (не тестировалось, хотя):

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); 
+0

Мне нужно сделать это в рамках Yii, можете ли вы дать некоторую идею? – Ninad

+0

Я просто сделал. Yii имеет файл index.php, который является файлом начальной загрузки. Добавьте его туда, прежде чем вам понадобится структура yii. – Twisted1919

1

вы можете просто использовать функцию urldecode()

+0

Где разместить этот код, когда я нажимаю на ссылку размещенную в фейсбуке я получаю, что URL – Ninad

+0

Как я понимаю, Вы размещаете свою ссылку в FB. Попробуйте декодировать/кодировать URL-код в коде, где вы отправляете свою ссылку на FB. –