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 相关文章推荐
PHP 中的一些经验积累
Oct 09 PHP
推荐Discuz!5的PHP代码高亮显示与实现可运行代码
Mar 15 PHP
php 中文字符入库或显示乱码问题的解决方法
Apr 12 PHP
php将时间差转换为字符串提示
Sep 07 PHP
PHP中最容易忘记的一些知识点总结
Apr 28 PHP
PHP从FLV文件获取视频预览图的方法
Mar 12 PHP
老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
Mar 20 PHP
CodeIgniter集成smarty的方法详解
May 26 PHP
PHP面向对象程序设计之命名空间与自动加载类详解
Dec 02 PHP
常用PHP封装分页工具类
Jan 14 PHP
ThinkPHP下表单令牌错误与解决方法分析
May 20 PHP
PHP ob缓存以及ob函数原理实例解析
Nov 13 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
使用HMAC-SHA1签名方法详解
2013/06/26 PHP
Laravel 5框架学习之用户认证
2015/04/09 PHP
PHP如何使用array_unshift()在数组开头插入元素
2020/09/01 PHP
用jquery ajax获取网站Alexa排名的代码
2009/12/12 Javascript
AJAX分页的代码(后台asp.net)
2011/02/14 Javascript
Bootstrap 最常用的JS插件系列总结(图片轮播、标签切换等)
2016/07/14 Javascript
微信小程序 video组件详解
2016/10/25 Javascript
如何制作幻灯片(代码分享)
2017/01/06 Javascript
vue 计时器组件的实现代码
2017/09/14 Javascript
浅谈jquery中ajax跨域提交的时候会有2次请求的问题
2017/11/10 jQuery
vue-cli与webpack处理静态资源的方法及webpack打包的坑
2018/05/15 Javascript
javascript中call()、apply()的区别
2019/03/21 Javascript
使用node搭建自动发图文微博机器人的方法
2019/03/22 Javascript
vue中js判断长时间不操作界面自动退出登录(推荐)
2020/01/22 Javascript
基于JavaScript实现简单抽奖功能代码实例
2020/10/20 Javascript
Nuxt 项目性能优化调研分析
2020/11/07 Javascript
[00:32]2018DOTA2亚洲邀请赛Secret出场
2018/04/03 DOTA
[01:10:27]DOTA2-DPC中国联赛正赛 SAG vs XG BO3 第二场 3月5日
2021/03/11 DOTA
python爬虫入门教程之点点美女图片爬虫代码分享
2014/09/02 Python
Python中字符串的格式化方法小结
2016/05/03 Python
Python实现XML文件解析的示例代码
2018/02/05 Python
对Xpath 获取子标签下所有文本的方法详解
2019/01/02 Python
Python中的 ansible 动态Inventory 脚本
2020/01/19 Python
python实现简单颜色识别程序
2020/02/19 Python
浅析Django 接收所有文件,前端展示文件(包括视频,文件,图片)ajax请求
2020/03/09 Python
python实现粒子群算法
2020/10/15 Python
使用Python快速打开一个百万行级别的超大Excel文件的方法
2021/03/02 Python
唤醒头发毛囊的秘密武器:Grow Gorgeous
2016/08/28 全球购物
工程造价自荐信
2013/10/09 职场文书
单位办理社保介绍信
2014/01/10 职场文书
教师个人自我鉴定
2014/02/08 职场文书
财务担保书范文
2014/04/02 职场文书
初二学习计划书范文
2014/04/27 职场文书
安全宣传标语口号
2014/06/06 职场文书
学校2014年度工作总结
2014/12/06 职场文书
毕业论文答辩开场白和答辩技巧
2015/05/27 职场文书