Форматиране на PHP
Форматирайте кода на PHP в последователен и четим стил с приставката Prettier PHP, близък до конвенциите PSR-12. Поставете файл, започващ с <?php, за да получите нормализирани интервали, скоби, масиви и вериги от методи, както и дълги списъци с аргументи, пренесени според ширината за печат. Синтактичните грешки се отчитат със съобщението на парсера, реда и колоната, което помага на разработчиците на PHP да почистят стария код преди преглед.
Често задавани въпроси
Кой форматиращ инструмент се използва?
Инструментът изпълнява Prettier 3 с @prettier/plugin-php 0.26 на сървъра. Резултатът му следва стил, близък до PSR-12: по подразбиране четири интервала на ниво, отварящите скоби на класове и функции са на собствен ред, а всеки оператор е на отделен ред.
Трябва ли кодът ми да започва с отварящ таг <?php?
Да. Приставката форматира кода вътре в таговете PHP. Всичко извън тях се третира като вграден HTML и се запазва непроменено, така че фрагмент без <?php се връща без промени.
Кои версии на PHP се поддържат?
Поддържа се синтаксисът на съвременния PHP 8, включително атрибути, изброявания, изрази match, стрелкови функции, именувани аргументи, промотиране на свойства на конструктор и класове readonly. Форматира се и код за по-старите PHP 5 и 7.
Ще промени ли форматиращият инструмент поведението на кода ми?
Не. Променя се само оформлението. Възможни са няколко чисто козметични промени, например дълъг синтаксис за array() може да се замени с еквивалентния кратък синтаксис []. Поведението на кода остава същото.
Какво се случва при синтактична грешка?
Форматирането спира и инструментът показва съобщението на парсера с реда и колоната, например при липсваща затваряща скоба. Поправете проблема на това място и форматирайте отново.
Мога ли да използвам табулации или два интервала?
Да. Изберете 2 или 4 интервала или включете табулациите. Ширината за печат от 40 до 200 знака, по подразбиране 80, определя кога извикванията, масивите и условията се пренасят.
Запазват ли се коментарите и блоковете docblock?
Да. Коментарите на ред, блоковите коментари и блоковете PHPDoc остават до кода, който описват. Текстът им не се преформатира.
Може ли да форматира шаблони, които смесват HTML и PHP?
Инструментът форматира блоковете PHP в такива шаблони и запазва непроменено HTML между тях. При големи файлове с шаблони може да са нужни и ръчни корекции.
Колко код мога да форматирам наведнъж?
До 1 MB код на заявка, като форматирането спира след 10 секунди. Това е достатъчно дори за много големи отделни файлове.
Запазва ли се кодът ми на сървъра?
Не. Кодът се форматира в паметта и веднага ви се връща. Не се запазва; записват се само размерите на заявките.