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
一步一步学习PHP(6) 面向对象
Feb 16 PHP
PHP获取文件绝对路径的代码(上一级目录)
May 29 PHP
PHP中使用foreach和引用导致程序BUG的问题介绍
Sep 05 PHP
ThinkPHP连接数据库及主从数据库的设置教程
Aug 22 PHP
PHP用户注册邮件激活账户的实现代码
May 31 PHP
PHP编程实现计算抽奖概率算法完整实例
Aug 09 PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
Feb 08 PHP
PHP面向对象五大原则之单一职责原则(SRP)详解
Apr 04 PHP
php-fpm.conf配置文件中文说明详解及重要参数说明
Oct 10 PHP
Thinkphp整合阿里云OSS图片上传实例代码
Apr 28 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
PHPCMS的使用小结
2010/09/20 PHP
PHP对象Object的概念 介绍
2012/06/14 PHP
php使用$_POST或$_SESSION[]向js函数传参
2014/09/16 PHP
php统计数组元素个数的方法
2015/07/02 PHP
ThinkPHP3.2.3实现分页的方法详解
2016/06/03 PHP
php生成二维码图片方法汇总
2016/12/17 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
PHP 实现手机端APP支付宝支付功能
2018/06/07 PHP
ext checkboxgroup 回填数据解决
2009/08/21 Javascript
基于JQUERY的多级联动代码
2012/01/24 Javascript
jquery仿搜索自动联想功能代码
2014/05/23 Javascript
javaScript基础语法介绍
2015/02/28 Javascript
js操作css属性实现div层展开关闭效果的方法
2015/05/11 Javascript
vue时间格式化实例代码
2017/06/13 Javascript
Three.js加载外部模型的教程详解
2017/11/10 Javascript
JavaScript实现浅拷贝与深拷贝的方法分析
2018/07/05 Javascript
基于vue-cli npm run build之后vendor.js文件过大的解决方法
2018/09/27 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
Vue项目打包部署到iis服务器的配置方法
2019/10/14 Javascript
vue 页面回退mounted函数不执行的解决方案
2020/07/26 Javascript
python多线程抓取天涯帖子内容示例
2014/04/03 Python
在Python中利用Pandas库处理大数据的简单介绍
2015/04/07 Python
python实现实时监控文件的方法
2016/08/26 Python
Django admin美化插件suit使用示例
2017/12/12 Python
对numpy中shape的深入理解
2018/06/15 Python
python模拟键盘输入 切换键盘布局过程解析
2019/08/15 Python
python requests证书问题解决
2019/09/05 Python
Python如何在DataFrame增加数值
2020/02/14 Python
PHP开发工程师面试问题集锦
2012/11/01 面试题
金融专业毕业生推荐信
2013/11/26 职场文书
预备党员党课思想汇报
2014/01/13 职场文书
四年级数学教学反思
2014/02/02 职场文书
上班时间打瞌睡检讨书
2014/09/26 职场文书
四风问题自我剖析材料
2014/10/07 职场文书
2014年驻村干部工作总结
2014/11/17 职场文书