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

像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$
© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发

请登录后发表评论