有可能吗?如果我在文件$config['url_suffix'] = '/en';
中设置config.php
,一切正常。
但是如果我想这样设置它:我的钩子类中的$ci->config->set_item('url_suffix', '/en');
:
class Language_loader {
public function __construct()
{
}
public function initialize()
{
$ci =& get_instance();
$ci->db = $ci->load->database('english', TRUE);
$ci->config->set_item('url_suffix', '/en');
}
}
然后它不起作用!我得到404 Page Not Found
。哦,钩子设置正确我测试了上面的数据库更改
hooks.php
中的挂钩配置:
$hook['post_controller_constructor'] = array(
'class' => 'Language_loader',
'function' => 'initialize',
'filename' => 'Language_loader.php',
'filepath' => 'hooks'
);
编辑:我注意到的更多信息,应用程序使用/en
后缀正确地重定向链接,当我到达那里时,而不是我得到404的网站。所以我猜它有效,但只有一半。
EDIT2:我无法在任何地方设置$this->config->set_item('url_suffix', '/en');
我在整个脚本中尝试了各种位置。我可以在配置文件中设置其他变量,但不能设置此url_suffix
个变量。如果我只知道在执行中,codeigniter何时读取该值,我可以更改它。