PHP CS Fixer
Run php-cs-fixer code formatter to format php code from your favorite text editor
Details
Installs
- Total 30K
 - Win 15K
 - Mac 8K
 - Linux 7K
 
| Nov 4 | Nov 3 | Nov 2 | Nov 1 | Oct 31 | Oct 30 | Oct 29 | Oct 28 | Oct 27 | Oct 26 | Oct 25 | Oct 24 | Oct 23 | Oct 22 | Oct 21 | Oct 20 | Oct 19 | Oct 18 | Oct 17 | Oct 16 | Oct 15 | Oct 14 | Oct 13 | Oct 12 | Oct 11 | Oct 10 | Oct 9 | Oct 8 | Oct 7 | Oct 6 | Oct 5 | Oct 4 | Oct 3 | Oct 2 | Oct 1 | Sep 30 | Sep 29 | Sep 28 | Sep 27 | Sep 26 | Sep 25 | Sep 24 | Sep 23 | Sep 22 | Sep 21 | Sep 20 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Windows | 0 | 2 | 2 | 1 | 1 | 2 | 1 | 4 | 2 | 1 | 1 | 5 | 0 | 3 | 1 | 2 | 1 | 2 | 3 | 5 | 2 | 0 | 2 | 5 | 2 | 3 | 2 | 3 | 7 | 3 | 0 | 2 | 2 | 2 | 3 | 3 | 1 | 1 | 3 | 3 | 2 | 1 | 2 | 1 | 0 | 4 | 
| Mac | 0 | 2 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 2 | 1 | 0 | 1 | 0 | 1 | 3 | 2 | 2 | 0 | 1 | 0 | 1 | 1 | 3 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 4 | 0 | 0 | 
| Linux | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 2 | 0 | 0 | 2 | 2 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 
Readme
- Source
 - raw.githubusercontent.com
 
Sublime PHP CS Fixer
This is a plugin for Sublime Text ¾, to format PHP code through php-cs-fixer command on any view.
Features
- It works inside a temporal view (ie: on an new, non-saved file)
 - Fast
 - Easy
 - Configurable through rules or a config file
 - Tested on Windows and Linux
 
Configuration
You have to install the actual php-cs-fixer (the actual tool made by sensiolabs, not this plugin)
You can install php-cs-fixer directly with composer by running:
composer global require friendsofphp/php-cs-fixer
Also you can create a config file as explained here https://github.com/FriendsOfPHP/PHP-CS-Fixer
for example in: $HOME/.php-cs-fixer.php
<?php
return (new PhpCsFixer\Config)
    ->setRules([
        '@Symfony' => true,
        'array_syntax' => ['syntax' => 'short'],
    ]);
If you've created a config file, you have to configure its path in the plugin's settings.
In Menu -> Preferences -> Package Settings -> PHP CS Fixer -> Settings - user
{
    "config": "/path/to/.php-cs-fixer.php"
}
When using multiple projects with different configurations, it's possible to configure the path relative to the Sublime project folder:
{
    "config": "${folder}/.php-cs-fixer.php",
    "php": "${packages}/User/php",
    "path": "${packages}/User/php-cs-fixer.php"
}
It's also possible to specify multiple config paths. In that case, the first readable file is used:
{
    "config": [
        "${file_path}/.php-cs-fixer.php",
        "${folder}/.php-cs-fixer.php",
        "/path/to/.php-cs-fixer.php"
    ]
}
See extract_variables in the Sublime API Reference
for the supported replacement variables. The value of the ${folder} points
the path of the first project in Sublime API. Here, it's beforehand replaced
with the path of the project the target file belongs.
Please note:
rulesandconfigdirectives are excluding.- This plugin don't try to find the config file automatically. If you want to create a config file, you have to specify its path in the plugin settings.
 
Rules
{
    "rules": {
        "@PhpCsFixer": true,
    },
    // or
    "rules": "@PhpCsFixer",
    // or
    "rules": [
        "@PhpCsFixer"
    ]
}
Please note that rules and config directives are excluding.
For more information see: https://github.com/FriendsOfPHP/PHP-CS-Fixer#usage
Exclude files
Since all php files are passed directly to the php-cs-fixer executable, a configured PhpCsFixer\Finder gets ignored. In order to exclude files from php-cs-fixer, you can use the “exclude” setting:
{
    "exclude": [
        ".*[\\\\/]vendor[\\\\/].*", // vendor-path (used by Composer)
        ".*\\.phtml$" // files ending with ".phtml"
    ]
}
The exclude-filter uses python regular expressions. For more information see: https://docs.python.org/2/library/re.html
On Windows:
The plugin tries to find the executable in:
%APPDATA%\composer\vendor\bin\php-cs-fixer.bat
If it isn't working, you can locate your composer global packages path by running:
composer config -g home
On Linux:
After installing php-cs-fixer you have to specify the full path to the executable in the configuration page.
The plugin tries to find the executable in:
$HOME/.composer/vendor/bin/php-cs-fixer
However, if it isn't working, you can create a symbolic link to the php-cs-fixer executable
ln -s $HOME/.composer/vendor/bin/php-cs-fixer $HOME/bin/php-cs-fixer
Note
I've checked this on Linux and Windows, but I cannot check it on OSX. I'll thank you if someone tells me if it's working on OSX and give me some details on how to configure it.
Acknowledgements
I would like to thank to sensiolabs and contributors for their awesome package. It works flawlessly. All the work here belongs to them.
Check them at:
I'd also learned some of the sublime package structure from: