Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git忽略Yii数据库详细信息_Yii_Configuration - Fatal编程技术网

git忽略Yii数据库详细信息

git忽略Yii数据库详细信息,yii,configuration,Yii,Configuration,所有应用程序实例所需的main.php中的一些详细信息(URL详细信息),以及每个应用程序实例所特有的一些详细信息(数据库详细信息) 有没有办法将数据库详细信息从protected/config/main.php中分离出来 你可以在这里找到一个想法:。 基本上,它通过导入不同的PHP文件(您的db配置)并合并包含的数组来工作: <?php return CMap::mergeArray( require(dirname(__FILE__).'/db-config.php'),

所有应用程序实例所需的
main.php
中的一些详细信息(URL详细信息),以及每个应用程序实例所特有的一些详细信息(数据库详细信息)


有没有办法将数据库详细信息从
protected/config/main.php
中分离出来

你可以在这里找到一个想法:。 基本上,它通过导入不同的PHP文件(您的db配置)并合并包含的
数组来工作:

<?php
return CMap::mergeArray(
    require(dirname(__FILE__).'/db-config.php'), 
    array(
          'basePath' => dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
          'name' => 'Page Title',
          ...
    )
);
?>

只需包含来自另一个PHP文件的共享配置:

main.php:

sharedDatabaseConfiguration.php:

您可能需要添加路径或其他内容,具体取决于文件的存储位置


编辑:顺便说一句,Yii还有一个奇特的CMap::mergeArray()函数,可以执行类似的操作(如果您想用另一个配置文件的内容“扩充”单个配置文件的内容。请查看默认生成的console.php以获取该示例。

您可以使用单独的配置文件(例如protected/config/production.php),它基于您的主配置文件,并根据建议使用
CMap::mergeArray
覆盖某些设置:

return CMap::mergeArray(
    require(dirname(__FILE__) . '/main.php'),
    array(
        'components' => array(
            'db' => array(
                'connectionString' => '...',
                'username' => '...',
                'password' => '...',
            ),
        ),
    )
);
然后可以将protected/config/production.php添加到.gitignore

return array('host' => ...);
return CMap::mergeArray(
    require(dirname(__FILE__) . '/main.php'),
    array(
        'components' => array(
            'db' => array(
                'connectionString' => '...',
                'username' => '...',
                'password' => '...',
            ),
        ),
    )
);