dusterio/prettyhp

PrettyHP is an opinionated PHP code formatter

dev-master 2018-01-24 03:59 UTC

README

Logo

Build Status Code Climate Latest Stable Version Total Downloads License

PrettyHP is an opinionated PHP code formatter

It removes all original styling and ensures that all outputted code conforms to a consistent style.

PrettyHP will try to comply with PSR as much as possible.

Inspired by JavaScript's prettier

But why?

Your IDE or editor may already have some basic formatting built-in, but:

  • At least PhpStorm cannot re-format code automatically before committing to VCS;
  • Different team members may have different editors, views and standards;
  • At least PhpStorm doesn't really enforce styling, it just does some basic indenting.

Why not use existing PHP code formatters?

phpfmt

phpfmt is officially closed, the repo is deleted by the authors.

php-cs-fixer

I'm a very experienced developer and Linux user, yet I couldn't get it up and running in 10+ minutes. Something is just wrong about it. Since the tool's verbose mode is not implemented, I couldn't debug it any further.

Installation

$ composer require --dev dusterio/prettyhp

We recommend to add a pre-commit Git hook so that any modified PHP files are prettified right before the commit:

$ cat .git/hooks/pre-commit

git diff --staged --diff-filter=dx --name-only HEAD | grep ".*\.php$" | xargs -I % sh -c 'vendor/bin/prettyhp format %; git add %'

Manual usage

PrettyHP is meant for PSR 4 compliant files – one file should contain one PHP class.

$ vendor/bin/prettyhp [filename]