一直都在用yii2做项目,有在用自动化配置,但是没有自己去配置过。中午没事去看了下yii的初始化代码,发现都是php而已!
yii2
初始化项目代码
所以,我们做项目肯定是可以用php做的,于是我新建了个文件夹,名为autoconfig,里面创建了个init,里面写了如下代码:
1
2
3
4
5
6
7
8
|
if (! file_exists ( './uploads/' )){
if (! mkdir ( './uploads/' )){
echo 'fail to make ./uploads/ file!' ;
} else {
echo 'make ./uploads/ success!' ;
}
}
|
也就是一个非常简单的自动创建uploads文件夹的代码,当uploads文件夹不存在时候,自动创建uploads文件夹。 我们在终端执行下:
自动创建配置
打开同级目录,发现uploads文件夹已经被创建。所以,如果我们要创建配置信息,可以直接采用php代码来配置,并没有什么很高深的东西。
我再写个demo2:
目标:
1. 在网站根目录创建uploads目录
2. 从common目录复制config.php模板到admin目录里面
3. 在根目录生成一个install.lock文件
4. 如果网站初始化后,必须删除根目录的install.lock,否则无法重复初始化
好了,我们看下我们现在的目录结构:
把init的代码改为如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
<?php
//设置长连接,以便可视化看到每个步骤执行情况
header( "connection: keep-alive" );
header( "proxy-connection: keep-alive" );
set_time_limit(0);
/*判断是否重复初始化*/
if ( file_exists ( './install.lock' )){
echo '系统已经初始化过了,如果要重新初始化,请删除install.lock' . "<br>" ;
}
/*创建uploads文件夹*/
if (! file_exists ( './uploads/' )){
if (! mkdir ( './uploads/' )){
echo '无法在根目录创建uploads文件夹' . "\n" ;
} else {
echo 'uploads文件夹创建成功' . "\n" ;
}
/*创建/admin/config.php文件*/
if (! file_exists ( './admin/config.php' )){
if ( copy ( './common/config.php' , './admin/config.php' )){
echo 'admin/config.php创建成功!' . "\n" ;
} else {
echo 'admin/config.php创建失败!' . "\n" ;
}
}
/*生成安装锁install.lock*/
touch( 'install.lock' );
echo '配置结束,如果有配置失败的,请手工执行' . "\n" ;
clearstatcache();
}
?>
|
在终端执行:
效果:
很显然,admin/config.php已经被创建,uploads目录也创建了,install.lock也有了。php实现自动化配置就是这么简单!
以上这篇php网站自动化配置的实现方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。