PHP网站自动化配置的实现方法(必看)


Posted in PHP onMay 27, 2017

一直都在用yii2做项目,有在用自动化配置,但是没有自己去配置过。中午没事去看了下yii的初始化代码,发现都是php而已!

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文件夹。 我们在终端执行下:

PHP网站自动化配置的实现方法(必看)

自动创建配置

打开同级目录,发现uploads文件夹已经被创建。所以,如果我们要创建配置信息,可以直接采用php代码来配置,并没有什么很高深的东西。

我再写个demo2:

目标:

1. 在网站根目录创建uploads目录

2. 从common目录复制config.php模板到admin目录里面

3. 在根目录生成一个install.lock文件

4. 如果网站初始化后,必须删除根目录的install.lock,否则无法重复初始化

好了,我们看下我们现在的目录结构:

PHP网站自动化配置的实现方法(必看)

把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();
}
?>

在终端执行:

PHP网站自动化配置的实现方法(必看)

效果:

PHP网站自动化配置的实现方法(必看)

很显然,admin/config.php已经被创建,uploads目录也创建了,install.lock也有了。PHP实现自动化配置就是这么简单!

以上这篇PHP网站自动化配置的实现方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
简单的页面缓冲技术
Oct 09 PHP
中国站长站 For Dede4.0 采集规则
May 27 PHP
PHP中设置时区方法小结
Jun 03 PHP
用Php编写注册后Email激活验证的实例代码
Mar 11 PHP
浅析php中如何在有限的内存中读取大文件
Jul 02 PHP
PHP 如何获取二维数组中某个key的集合
Jun 03 PHP
php实现中文字符截取防乱码方法汇总
Apr 29 PHP
使用Composer安装Yii框架的方法
Mar 15 PHP
php中简单的对称加密算法实现
Jan 05 PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
Apr 07 PHP
Yii2实现ActiveForm ajax提交
May 26 PHP
PHP实现的AES双向加密解密功能示例【128位】
Sep 03 PHP
PHP中的函数声明与使用详解
May 27 #PHP
PHP仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(上)
May 26 #PHP
Yii2实现ActiveForm ajax提交
May 26 #PHP
Yii2选项卡的简单使用
May 26 #PHP
PHP编程获取各个时间段具体时间的方法
May 26 #PHP
php实现自定义中奖项数和概率的抽奖函数示例
May 26 #PHP
PHP判断密码强度的方法详解
May 26 #PHP
You might like
一个odbc连mssql分页的类
2006/10/09 PHP
九个你必须知道而且又很好用的php函数和特点
2013/08/08 PHP
discuz免激活同步登入代码修改方法(discuz同步登录)
2013/12/24 PHP
php清空(删除)指定目录下的文件,不删除目录文件夹的实现代码
2014/09/04 PHP
Laravel中使用阿里云OSS Composer包分享
2015/02/10 PHP
Laravel使用RabbitMQ的方法示例
2019/06/18 PHP
PHP Trait功能与用法实例分析
2020/06/03 PHP
jQuery 删除/替换DOM元素的几种方式
2014/05/20 Javascript
javascript对中文按照拼音排序代码
2014/08/20 Javascript
javascript实现行拖动的方法
2015/05/27 Javascript
jQuery实现的产品自动360度旋转展示特效源码分享
2015/08/21 Javascript
深入分析javascript中的错误处理机制
2016/07/17 Javascript
JavaScript中setTimeout的那些事儿
2016/11/14 Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
2016/12/13 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
cocos creator Touch事件应用(触控选择多个子节点的实例)
2017/09/10 Javascript
React-Native之定时器Timer的实现代码
2017/10/04 Javascript
web前端vue之vuex单独一文件使用方式实例详解
2018/01/11 Javascript
JS设计模式之状态模式概念与用法分析
2018/02/05 Javascript
微信小程序实现团购或秒杀批量倒计时
2020/11/01 Javascript
Element Input组件分析小结
2018/10/11 Javascript
vue中$nextTick的用法讲解
2019/01/17 Javascript
vue中使用vue-cli接入融云实现即时通信
2019/04/19 Javascript
10种JavaScript最常见的错误(小结)
2019/06/21 Javascript
布同自制Python函数帮助查询小工具
2011/03/13 Python
TensorFlow车牌识别完整版代码(含车牌数据集)
2019/08/05 Python
如何打包Python Web项目实现免安装一键启动的方法
2020/05/21 Python
pytorch 多分类问题,计算百分比操作
2020/07/09 Python
全球最大的网上自行车商店:Chain Reaction Cycles
2016/12/02 全球购物
大学新生军训个人的自我评价
2013/10/03 职场文书
应届生财务会计求职信
2013/11/05 职场文书
毕业生党员个人总结
2015/02/14 职场文书
结婚当天新郎保证书
2015/05/08 职场文书
借条如何写
2015/05/26 职场文书
董事长新年致辞
2015/07/29 职场文书
python垃圾回收机制原理分析
2022/04/13 Python