PHP网站自动化配置的实现方法(必看)
一直都在用yii2做项目,有在用自动化配置,但是没有自己去配置过。中午没事去看了下yii的初始化代码,发现都是php而已!
yii2
初始化项目代码
所以,我们做项目肯定是可以用php做的,于是我新建了个文件夹,名为autoConfig,里面创建了个init,里面写了如下代码:
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的代码改为如下:
<?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网站自动化配置的实现方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
使用composer命令加载vendor中的第三方类库 的方法
这篇文章主要介绍了使用composer命令加载vendor中的第三方类库的方法,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-07-07Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
这篇文章主要给大家介绍了关于在Laravel 5中如何使用Laravel Excel实现Excel/CSV文件导入导出功能的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下。2017-10-10CentOS下与Apache连接的PHP多版本共存方案实现详解
这篇文章主要介绍了CentOS下与Apache连接的PHP多版本共存方案实现,针对mod_fcgi模块的配置作了一些说明,需要的朋友可以参考下2015-12-12thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】
这篇文章主要介绍了thinkPHP5.0框架整体架构,简单介绍了thinkPHP5.0的应用,模块,MVC,驱动,行为,命名空间等概念与基本用法,需要的朋友可以参考下2017-03-03
最新评论