这篇文章介绍 npm 包 @swis/php-cs-fixer-proxy 的使用。该 npm 包是一个 PHP CS Fixer 的代理,能够通过 http 与 cli 交互,并且支持 Docker 部署。本文会详细介绍该 npm 包的特点、安装过程、使用方式和示例代码。
特点
- 灵活性:可以通过本地 cli、Docker、http 三种方式使用
- 稳定性:基于 symfony/http-foundation 和 go1.14.2,并由 swis 内部使用
- 兼容性:支持 PHP CS Fixer 2.* 到 3.* 的所有版本
- 配置化:可以通过配置文件的方式设置 PHP CS Fixer 的行为
- 安全性:对用户请求的 URL 进行了过滤,并对每一个请求都记录了请求来源
安装
使用 npm 命令进行安装:
npm install @swis/php-cs-fixer-proxy --save-dev
使用
cli
确保已经安装 PHP CS Fixer,使用以下命令进行安装:
composer require friendsofphp/php-cs-fixer --dev
PHP CS Fixer 的使用方法不再赘述,这里假设你已经会使用 PHP CS Fixer。
运行以下命令:
./node_modules/.bin/php-cs-fixer-proxy-cli [<arg1> [<arg2> [...]]]
其中的 arg
参数是 PHP CS Fixer 的参数,可以参考 PHP CS Fixer 的说明文档进行设置。
Docker
在 Docker 中运行该包非常简单,运行以下命令:
docker run -p 8000:8000 swisnl/php-cs-fixer-proxy
该命令将会在本地的 8000 端口上启动 PHP CS Fixer 的代理。你可以使用 curl 或浏览器访问该代理。
http
在 package.json 文件中添加以下代码:
"scripts": { "php-cs-fixer-proxy": "php-cs-fixer-proxy" },
运行以下命令:
npm run php-cs-fixer-proxy -- --allow-hosts localhost:8080
其中的 localhost:8080
是 PHP CS Fixer 守护进程的地址,你可以根据你的实际情况进行修改。
配置
在项目根目录中添加 .php-cs-fixer.php 配置文件,配置文件中可以设置 PHP CS Fixer 的行为。例如:
<?php return [ // Specify rules 'rules' => [ '@PSR2' => true, ], ];
示例代码
假设你的目录结构如下:
. ├── node_modules ├── package.json ├── src │ └── index.php └── .php-cs-fixer.php
在 src/index.php 文件中添加以下代码:
<?php class Example { public function sayHello($name) { echo "Hello, $name!"; } } $example = new Example(); $example->sayHello('World');
运行以下命令:
./node_modules/.bin/php-cs-fixer-proxy-cli src/index.php
你可以看到它打印出了 Hello, World!
。如果你使用 --dry-run
参数,会输出重写后的代码。
使用 PHP CS Fixer 进行代码风格统一是非常重要的,因为它可以统一项目的代码风格,提高代码可读性和可维护性。npm 包 @swis/php-cs-fixer-proxy 提供了灵活的使用方式,你可以根据实际情况进行选择。希望这篇文章对你有所帮助。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/600673dffb81d47349e53c4a