views:

590

answers:

5

I've taken over a mixed PHP4/PHP5 project which has been handed down from developer to developer, with each one making things worse. Before I spend too much time on it I'd like to develop a base-standard, with consistent formatting at a minimum.

Can anyone recommend a utility (Linux or Mac OS X preferably) that will reformat the code?

If I can set parameters which influence output (like tab-indentation, brace/bracket placement, when to split array values onto new lines etc.) then that's a benefit, though not crucial.

Preference goes to Open Source tools, though I'd like to know your experiences with purchased software too.

+5  A: 

You can do that with Netbeans or with Eclipse PDT, both excellent PHP editors. There's a Format Code option in each, which will reformat a selected file according to your code style preferences. There may be an option to format code in bulk as well.

I do recommend that if you do this, do the format and immediately check the code back in with a big fat "REFORMATTING!" comment. Trying to mix in other bug fixes with the reformat makes for nasty-looking diff files to try to decipher down the road.

jodonnell
+1  A: 

I've used http://www.phpformatter.com/, which is an online tool.

Daniel Serodio
A: 

Checkout CodeSniffer. I have also used this script

grom
A: 

In my own searching I found the Wikipedia article on Pretty Print which I think will be useful.

mlambie
+2  A: 

I use phptidy: http://cmr.cx/phptidy/

By design, it's not as aggressive as perltidy, but it's still very useful. It can be configured and will do all the php files in your project as a batch.

oddknock