我要实现的是多域名的功能,是在后台把所有的子域名的记录写入到配置文件中,想要实现的配置文件格式如下:
'APP_SUB_DOMAIN_DEPLOY' => '1',
'APP_SUB_DOMAIN_RULES' => array (
'zdxq.domain.com' => array('Portal','siteid=5'),
),
但是通过我下面的程序实现写配置文件后,写入的文件格式生成是这样样子:
<?php return array (
'APP_SUB_DOMAIN_DEPLOY' => '1',
'APP_SUB_DOMAIN_RULES' =>
array (
'www.domain.com' =>
array (
0 => 'portal',
1 => 'siteid=1',
),
'zdxq.domain.com' =>
array (
0 => 'portal',
1 => 'siteid=5',
),
),
);?>
说白了,上面这一段生成后写入的三维数组中多生成了数组键名0 1,我其实是想要实现最上面这一段的格式。
我想问的是,怎么能够生成不要生成数组键名0 1。
我的程序:
$site=$this->site_obj->getSiteList(); //获取所有站点列表
foreach($site as $k => $v){
$r=array("portal","siteid={$v['id']}"); //这是和上面对照着的数组
$configs[$v['domain']]=$r;
}
$config['APP_SUB_DOMAIN_RULES']=$configs;
set_dynamic_config($config,"domain"); //这是一个函数。
---------函数set_dynamic_config 部分代码;
if(file_exists($config_file)){
$configs=include $config_file;
}else {
$configs=array();
}
$configs=array_merge($configs,$data);
$result = file_put_contents($config_file, "<?php\treturn " . var_export($configs, true) . ";?>"); //主要看这一行