Php Codeigniter i18n-在URL中隐藏默认\u控制器语言段
我的i18n库的一切都很完美,除了一个小问题: 我想制作一个主页,选择一种带有链接的语言(指向:en、fr、bg等): 示例:Php Codeigniter i18n-在URL中隐藏默认\u控制器语言段,php,.htaccess,codeigniter,internationalization,Php,.htaccess,Codeigniter,Internationalization,我的i18n库的一切都很完美,除了一个小问题: 我想制作一个主页,选择一种带有链接的语言(指向:en、fr、bg等): 示例:, 但我的默认uri始终是示例:/bg并打开:www.mysite.com/bg 我只想把普通URL加载到上面:www.mysite.com,加载我的START.PHP控制器(不管名称是什么,但不要是www.mysite.com/START),然后用链接重定向到某个地方(bg/,en/,fr/) 似乎不太难,但不知道如何解决它 在MY_Lang.php中: // lang
,
但我的默认uri始终是示例:/bg并打开:www.mysite.com/bg
我只想把普通URL加载到上面:www.mysite.com,加载我的START.PHP控制器(不管名称是什么,但不要是www.mysite.com/START),然后用链接重定向到某个地方(bg/,en/,fr/)
似乎不太难,但不知道如何解决它
在MY_Lang.php中:
// languages
var $languages = array(
'bg' => 'bulgarian',
'en' => 'english',
'fr' => 'french'
);
// special URIs (not localized)
var $special = array (
"admin", "start"
);
// where to redirect if no language in URI
var $default_uri = '';
在my routes.php中:
$route['default_controller'] = "start";
$route['404_override'] = '';
// URI like '/en/about' -> use controller 'about'
//$route['(\w{2})/(.*)'] = '$2';
//$route['(\w{2})'] = $route['default_controller'];
$route['^(bulgarian|english|french)/(.+)$'] = "$2";
// '/en', '/de', '/fr' and '/nl' URIs -> use default controller
$route['^(bulgarian|english|french)$'] = $route['default_controller'];
我也有类似的情况。对我来说,解决办法是: