1
我使用Joomla! 3.3,和我的實際URL是這樣的:Joomla! 3條非英文和特殊字符從URL
my_domain.com/component/newsletter/unsubscribe/email-domain.com/25
我的組件的router.php:
function newsletterBuildRoute(&$query) {
$segments = array();
$segments[] = $query['method'];
$segments[] = $query['email'];
$segments[] = $query['id'];
unset($query['method']);
unset($query['email']);
unset($query['contact_id']);
return $segments;
}
function newsletterParseRoute($segments) {
$vars = array();
$vars['method'] = $segments[0];
$vars['email'] = $segments[1];
$vars['contact_id'] = $segments[2];
return $vars;
}
但當我嘗試這個辦法:
echo JFactory::getApplication()->input->get('email');
我得到:
emaildomain.com // '@' is stripped
而且當我把任何 url中的非英文字符,它也會被刪除。
任何想法,爲什麼這是發生?
PS:我設置在全局配置Unicode的別名是
謝謝,根據本文檔,當使用'RAW'作爲第三個參數時,不提供衛生設施。但爲什麼它將第一個破折號替換爲冒號? –
冒號的第一個破折號?你指的是哪一條? – Lodder
例如'example.com/component/products/email-me-alireza @ example.com'每次都會改變爲'.../email:[email protected] ...' –