nochso / phormat
具有单一种风格的 PHP 代码格式化工具 - 实际上类似于 PHP 的 godoc
Requires
- php: ^5.6 || ^7.0
- aura/cli: ^2.1
- nette/finder: ^2.3
- nikic/php-parser: ^2.1.0
- nochso/diff: dev-master
- nochso/omni: ^0.3.7
- padraic/phar-updater: ^1.0
Requires (Dev)
- nochso/benchmark: ^0.5.3
- nochso/writeme: dev-master
- phpunit/phpunit: ^5.2
This package is not auto-updated.
Last update: 2024-09-14 19:25:31 UTC
README
Phormat 格式化 PHP 源代码。
简介,目标和范围
Phormat 是基于 nikic/php-parser 的美观打印工具。它 丢弃 任何格式化,并以 统一 的样式打印源代码。自定义格式化选项不在此范围内。
所选样式是个人喜好,旨在在保持代码可读性的同时保持行数低。
你是反 PSR!你为什么讨厌 FIG?
我不是。我不。这不是 PSR2 的替代品、改进或批评,而仅仅是一个你可以自由忽略的替代方案。
PSR2 由于其广泛性而得到了应用,并帮助许多项目决定采用共同的风格。但这并不意味着每个人都个人喜欢它,或者它是你必须遵守的事实标准。关于 制表符与空格 或 括号的放置 的问题将始终是圣战的组成部分,因为它归结为个人喜好。
最终,如果项目有一个 定义良好 的风格,并且易于贡献者遵守,那么这对合作是 最好的。这对于 PSR2 和 phormat 都很容易做到。
有关遵守 PSR2 的绝佳方法,请参阅 php-cs-fixer。
要求
此项目是为 PHP 5.6、7.0 和 HHVM 编写和测试的。
安装
对于最终用户,首选 PHAR 版本。要全局安装
- 从 最新版本 下载 PHAR 文件。
- 使其可执行:
chmod +x phormat.phar
- 将其移动到您的
PATH
内的某个位置:sudo cp phormat.phar /usr/local/bin/phormat
作为每个项目的本地 Composer 开发依赖项
composer require --dev nochso/phormat
作为全局 Composer 依赖项
composer global require nochso/phormat
使用
作为本地依赖项 php vendor/bin/phormat
或如果全局安装了,只需 phormat
。
phormat [options] <path>
phormat [options] <path1> <path2> ...
默认情况下,将覆盖指定的路径中的 PHP 文件。有关覆盖此行为的选项,请参阅以下内容。
如果路径是文件夹,它将递归地搜索以 *.php
结尾的文件。
将跳过原生 PHP 模板以避免破坏其格式。模板是通过查找 控制结构的替代语法(如 if (true): .. endif;
)来检测的。
命令行选项
Arguments
<paths>
One or many paths to files or directories.
Options
-d, --diff
Preview diff of formatted code. Implies --no-output.
-s, --summary
Show a status summary for each file.
-o, --order
Change order of class elements:
constants > properties > methods
static > abstract > *
public > protected > private
__* > has* > is* > get* > set* > add* > remove* > enable* > disable* > *
-p, --print
Print full output of formatted code. Implies --no-output.
-n, --no-output
Do not overwrite source files.
-h, --help
Show this help.
--version
Show version information.
--self-update
Update phormat to the latest version.
贡献
反馈、错误报告和拉取请求始终欢迎。
请阅读贡献指南以获取说明。
变更日志
查看CHANGELOG.md以了解发布之间的完整变更历史。
[未发布]
变更
- 改进行包裹:对于由
.
、||
和&&
组成的行,使用100个字符的软限制。
[0.1.5] - 2016-04-23
变更
- 允许无公钥的自更新。
[0.1.4] - 2016-04-23
添加
- 当启用xdebug或xdebug-profiling时显示警告。
变更
- 将多行中的关闭括号放在新的一行。
- 使用语句总是排序。
- 分离类、接口和特性。
- 将使用和分组使用语句放在一起。
许可证
此项目基于MIT许可证发布。请参阅LICENSE.md以获取全文。