我在codeigniter中的config.php
文件中编写自定义配置,但从开发到生产,有很多工作重命名我的自定义配置以反映新域。
例如
$config['base_url'] = 'http://localhost/_init/';
$config['media_player_js'] = 'http://localhost/assets/';
$config['media_player_css'] = 'http://localhost/_init/';
$config['videos'] = 'http://localhost/_init/';
$config['audios'] = 'http://localhost/_init/';
我不得不重复四次基本网址。$config['base_url']
文件中是否可以使用config.php
变量?
答案 0 :(得分:3)
为什么要在配置文件中定义base_url()? base_url应包含基本路径。我给出了我在项目中使用的示例: -
在您的配置文件中定义base_url,如下所示: -
$root = "http://".$_SERVER['HTTP_HOST'];
$root .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);
$config['base_url'] = "$root";
然后假设您要访问assets
文件夹。所以你只需要写base_url()."assets/"
。像这样你可以从项目的任何地方访问你的任何文件夹。
注意: - 对于生产服务器,base_url()也不需要任何更改。
答案 1 :(得分:0)
$config['base_url'] = '/_init/';
$config['media_player_js'] = '/assets/';
$config['media_player_css'] = '/_init/';
$config['videos'] = '/_init/';
$config['audios'] = '/_init/';
允许您在任何域上使用相同的配置。
答案 2 :(得分:0)
我很惊讶这个作品
$config['media_player_js'] = $config['base_url'] .'assets/media_player.js';
并使用它
echo $this->config->item('media_player_js');