php根据命令行参数生成配置文件详解


Posted in PHP onMarch 15, 2019

像npm, composer等工具,在开始使用的使用,都需要初始化项目,生成一个项目的配置文件。这种功能的原理是怎么实现的呢?

比如:

D:\>npm init --yes
Wrote to D:\package.json:

{
 "name": "",
 "version": "1.0.0",
 "description": "",
 "main": "index.js",
 "directories": {
  "doc": "doc"
 },
 "scripts": {
  "test": "echo \"Error: no test specified\" && exit 1"
 },
 "keywords": [],
 "author": "",
 "license": "ISC"

其实很简单,在之前这篇文章php解释命令行的参数的基础上,加上下面的init分支,即可实现类似的功能

#!/usr/bin/php
<?php
  function init(){
    return file_put_contents( getcwd() . '/go.json', '{}' ) . 'bytes has written.' . 'config file has created';
  }

  $res = '';
  if( $argc >= 2 ) {
    $argv[1] == '-v' && $res = 'go version is 1.0';
    $argv[1] == 'init' && $res = init();
  }
  echo $res . PHP_EOL;
ghostwu@ghostwu:~/mybin$ ls
go2
ghostwu@ghostwu:~/mybin$ go2 init
2bytes has written.config file has created
ghostwu@ghostwu:~/mybin$ ls
go2 go.json
ghostwu@ghostwu:~/mybin$ cat go.json
{}ghostwu@ghostwu:~/mybin$

以上所述是小编给大家介绍的php根据命令行参数生成配置文件详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
php基础知识:类与对象(2) 自动加载对象
Dec 13 PHP
基于MySQL体系结构的分析
May 02 PHP
探讨file_get_contents与curl效率及稳定性的分析
Jun 06 PHP
浅析php面向对象public private protected 访问修饰符
Jun 30 PHP
php中实现xml与mysql数据相互转换的方法
Dec 25 PHP
php将日期格式转换成xx天前的格式
Apr 16 PHP
一个PHP实现的轻量级简单爬虫
Jul 08 PHP
PHP学习笔记之php文件操作
Jun 03 PHP
PHP正则表达式匹配替换与分割功能实例浅析
Feb 04 PHP
PHP与Perl之间知识点区别整理
Mar 19 PHP
PHP下用Swoole实现Actor并发模型的方法
Jun 12 PHP
如何判断微信付款码和支付宝付款码
Apr 01 PHP
详解PHP的抽象类和抽象方法以及接口总结
Mar 15 #PHP
PHP基于面向对象封装的分页类示例
Mar 15 #PHP
浅谈PHP无限极分类原理
Mar 14 #PHP
详解PHP队列的实现
Mar 14 #PHP
PHP精确到毫秒秒杀倒计时实例详解
Mar 14 #PHP
PHP的简单跳转提示的实现详解
Mar 14 #PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
Mar 14 #PHP
You might like
PHP 一个比较完善的简单文件上传
2010/03/25 PHP
PHP源代码数组统计count分析
2011/08/02 PHP
为你总结一些php信息函数
2015/10/21 PHP
Javascript 表单之间的数据传递代码
2008/12/04 Javascript
javaScript复制功能调用实现方案
2012/12/13 Javascript
原生js拖拽(第一课 未兼容)拖拽思路
2013/03/29 Javascript
NodeJS url验证(url-valid)的使用方法
2013/11/18 NodeJs
js判断数据类型如判断是否为数组是否为字符串等等
2014/01/15 Javascript
通过正则表达式实现表单验证是否为中文
2014/02/18 Javascript
jquery中each遍历对象和数组示例
2014/08/05 Javascript
JS版元素周期表实现方法
2015/08/05 Javascript
微信小程序 开发之滑块视图容器(swiper)详解及实例代码
2017/02/22 Javascript
简单好用的nodejs 爬虫框架分享
2017/03/26 NodeJs
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
jQuery动态添加.active 实现导航效果代码思路详解
2017/08/29 jQuery
JavaScript基础心法 深浅拷贝(浅拷贝和深拷贝)
2018/03/05 Javascript
Vue指令之 v-cloak、v-text、v-html实例详解
2019/08/08 Javascript
JavaScript计算出两个数的差值
2020/03/19 Javascript
vue项目里面引用svg文件并给svg里面的元素赋值
2020/08/17 Javascript
vue祖孙组件之间的数据传递案例
2020/12/07 Vue.js
Python break语句详解
2014/03/11 Python
python中的hashlib和base64加密模块使用实例
2014/09/02 Python
Python基于回溯法子集树模板解决取物搭配问题实例
2017/09/02 Python
Python实用技巧之列表、字典、集合中根据条件筛选数据详解
2018/07/11 Python
python进阶之多线程对同一个全局变量的处理方法
2018/11/09 Python
Python3.5模块的定义、导入、优化操作图文详解
2019/04/27 Python
python爬虫 基于requests模块的get请求实现详解
2019/08/20 Python
python openvc 裁剪、剪切图片 提取图片的行和列
2019/09/19 Python
OpenCV 之按位运算举例解析
2020/06/19 Python
html5实现滑块功能之type=&quot;range&quot;属性
2020/02/18 HTML / CSS
夏威夷灵感服装及配饰:Reyn Spooner
2018/09/18 全球购物
泰海淘:泰国king Power王权免税集团旗下跨境海淘综合型电商
2020/07/26 全球购物
大学生职业生涯设计书
2014/01/02 职场文书
基层党组织整改方案
2014/10/25 职场文书
部门经理迟到检讨书
2015/02/16 职场文书
应届生个人的求职(自荐信范文2篇)
2019/08/23 职场文书