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+MySQL 制作简单的留言本
Nov 02 PHP
phpmyadmin导入(import)文件限制的解决办法
Dec 11 PHP
JS与PHP向函数传递可变参数的区别实例代码
May 18 PHP
PHP投票系统防刷票判断流程分析
Feb 04 PHP
php ZipArchive压缩函数详解实例
Nov 06 PHP
PHP static局部静态变量和全局静态变量总结
Mar 02 PHP
php中把美国时间转为北京时间的自定义函数分享
Jul 28 PHP
php多重接口的实现方法
Jun 20 PHP
PHP读取文件内容的五种方式
Dec 28 PHP
PHP共享内存用法实例分析
Feb 12 PHP
Laravel框架实现定时Task Scheduling例子
Oct 22 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
php启用zlib压缩文件的配置方法
2013/06/12 PHP
PHP Yii框架之表单验证规则大全
2015/11/16 PHP
CodeIgniter集成smarty的方法详解
2016/05/26 PHP
PHP命名空间用法实例分析
2019/09/04 PHP
PHP代码加密的方法总结
2020/03/13 PHP
php+websocket 实现的聊天室功能详解
2020/05/27 PHP
js制作的鼠标悬浮时产生的下拉框效果
2012/10/27 Javascript
15条JavaScript最佳实践小结
2013/08/09 Javascript
js带前后翻页的图片切换效果代码分享
2015/09/08 Javascript
arcgis for js 修改infowindow样式的方法
2016/11/02 Javascript
JavaScript实现音乐自动切换和轮播
2017/11/05 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
JavaScript实现图片放大预览效果
2020/11/02 Javascript
[01:41]DOTA2超级联赛专访YYF 称一辈子难忘TI2
2013/05/28 DOTA
python插入排序算法的实现代码
2013/11/21 Python
python字符串对其居中显示的方法
2015/07/11 Python
Python爬虫利用cookie实现模拟登陆实例详解
2017/01/12 Python
python实现多线程网页下载器
2018/04/15 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
Django使用rest_framework写出API
2020/05/21 Python
python操作toml文件的示例代码
2020/11/27 Python
python excel和yaml文件的读取封装
2021/01/12 Python
K近邻法(KNN)相关知识总结以及如何用python实现
2021/01/28 Python
HTML5和CSS3让网页设计提升到下一个高度
2009/08/14 HTML / CSS
英国最红的高街时尚品牌:Topshop
2016/08/05 全球购物
纽约著名的服装辅料来源:M&J Trimming
2017/07/26 全球购物
意大利男装网店:Vrients
2019/05/02 全球购物
个人简历中的自我评价范例
2013/10/29 职场文书
市场营销专业推荐信
2013/11/03 职场文书
大型活动策划方案
2014/01/12 职场文书
物业公司的岗位任命书
2014/06/06 职场文书
物资采购方案
2014/06/12 职场文书
电子专业求职信
2014/06/19 职场文书
公务员个人考察材料
2014/12/23 职场文书
运动会表扬稿
2015/01/16 职场文书
React更新渲染原理深入分析
2022/12/24 Javascript