Данный пакет для composer
позволяет запускать автоматический Code Style Fixer
для PHP
с фиксированным набором правил, принятых в качестве основных для оформления исходного php
кода.
Require this package with composer using the following command:
$ composer require feugene/php-cs-fixer "^1.0"
Installed
composer
is required (how to install composer).
В директории с вашим приложением выполните в терминале:
$ php ./vendor/bin/cs-fix
Опционально можете передать свои параметры запуска. При передаче параметра --config
- все параметры, что формирует данный пакет - будут проигнорированы, и будет произведен запуск именно с теми параметрами, что будут переданы вами.
Если вам требуется опционально переопределить переопределить параметры правил fixer-а, то создайте в корне вашего приложения файл .cs_rules.php
, возвращающий ассоциированный массив правил (более подробно о самих правилах можешь ознакомиться по этой ссылке). При его наличии его контент будет мерджиться с конфигом пакета, опционально перекрывая необходимые правила. Иметь он должен следующий вид:
<?php
/**
* CS Fixer Rules.
*
* @see https://github.com/FriendsOfPHP/PHP-CS-Fixer
* @see https://mlocati.github.io/php-cs-fixer-configurator/
*/
return [
'@PSR2' => true,
'@PHP71Migration' => true,
'binary_operator_spaces' => [
'operators' => [
'=' => 'align_single_space',
'=>' => 'align_single_space',
],
],
'blank_line_after_namespace' => true,
'blank_line_after_opening_tag' => true,
];
Так же в корне можете разместить файл .cs_excludes.php
, содержащий пути директорий, которые следует исключить при обработке, вида:
<?php
/**
* Excludes directories names.
*
* NOTE: excludes will works only for directories.
*/
return [
'bootstrap',
'storage',
'vendor',
'public',
'resources',
];
Для переопределения пути файла кэша - установите в переменной окружения переменную с именем PHP_CS_FIX_CACHE_FILE_PATH
, значение которой - необходимый путь. Например:
$ PHP_CS_FIX_CACHE_FILE_PATH=./.new.cache ./cs-fix
Более подробно о работе пакета - Look into the sources, Luke
.
Changes log can be found here.
If you will find any package errors, please, make an issue in current repository.
This is open-sourced software licensed under the MIT License.