Фигурные скобки PHP на новой строке

Эта страница помещает каждую открывающую фигурную скобку PHP на отдельную строку, а закрывающую выравнивает с ней. Этот стиль часто называют Allman. Вставьте фрагмент, где скобки стоят в конце строки или все в одной строке, и блоки выйдут выровненными по вертикали.

Как поставить фигурные скобки на новую строку

  1. 1

    Вставьте фрагмент

    Добавьте код в поле PHP-кода, оставив скобки там, где они стоят сейчас.

  2. 2

    Выберите отступ

    Выберите 2 или 4 пробела для содержимого каждого блока.

  3. 3

    Продолжите

    Откройте страницу результата, чтобы увидеть переформатированный код.

  4. 4

    Скопируйте код

    Убедитесь, что блоки выровнены, и скопируйте.

Расположение скобок в этом инструменте

У инструмента есть только одна раскладка, и выбрать другую нельзя: каждый { начинает собственную строку, каждый } стоит на своей строке, а содержимое внутри сдвигается на один уровень. Поэтому else и catch начинаются с новой строки после закрывающей скобки.

Исходные данные с фигурными скобками в конце строки:

<?php if ($age >= 18) { echo "adult"; } else { echo "minor"; }

Результат:

<?php if ($age >= 18)
{
    echo "adult";
}
else
{
    echo "minor";
}

Какой стиль выбрать?

Распространенные руководства по стилю PHP ставят открывающую скобку класса или метода на отдельную строку, а управляющие конструкции, такие как if и foreach, обычно оставляют скобку на той же строке, что и оператор. Инструмент применяет раскладку с новой строкой везде. Это правильно для классов и методов, а для остального является осознанным выбором. Если в вашем проекте принята смешанная конвенция, скобки управляющих конструкций придется вернуть на место вручную.

Практические замечания

  • Вложенные блоки по-прежнему смещаются, поэтому цикл внутри метода внутри класса окажется на третьем уровне глубины.
  • После закрывающей скобки всегда идет перенос строки, поэтому } и код после нее никогда не стоят на одной строке.
  • Фигурные скобки в комментариях и в текстах, похожих на строки, например в heredoc, считаются настоящими скобками и могут сдвинуть разметку.
  • Настройки, которая оставила бы открывающую скобку на строке оператора, нет. Эта страница не может создать такой стиль.

Пример с классом

Исходные данные:

<?php class User{private $name;public function getName(){return $this->name;}}

Результат с 4 пробелами:

<?php class User
{
    private $name;
    public function getName()
    {
        return $this->name;
    }
}

Скобка класса и скобка метода стоят отдельно, а тело метода сдвинуто на уровень глубже, чем свойство выше. Закрывающие скобки выровнены по строке, которая их открыла, поэтому блоки легко сопоставить глазами.

Совмещение с собственным стилем

Если нужно изменить только некоторые блоки, вставьте только их. Результат легко вернуть в файл копированием и вставкой, потому что каждый блок заканчивается на своей закрывающей скобке. Не вставляйте фрагмент, который начинается или заканчивается посреди блока, так как глубина отсчитывается от нуля и не совпадет с окружающим файлом.

Часто задаваемые вопросы

Нет. Инструмент всегда переносит открывающую скобку на отдельную строку.

Классы и методы его часто используют. Управляющие конструкции, такие как if и foreach, обычно оставляют скобку на той же строке, а этот инструмент так не делает.

Каждая закрывающая скобка завершает свою строку, поэтому то, что идет после нее, начинается на следующей строке.

Он обрабатывает любой блок с фигурными скобками одинаково, поэтому такие блоки тоже получают отступы. Проверьте результат, чтобы убедиться, что метки case выглядят правильно.

Сопутствующие инструменты

Генератор вымышленных телефонных номеров

Создавайте до 50 вымышленных номеров из официально зарезервированных диапазонов пяти стран.

Генератор конфигурации webpack

Создайте webpack.config.js для webpack 5 под чистый JavaScript, React или Vue: TypeScript, Babel, CSS или Sass, изображения, HtmlWebpackPlugin, dev-сервер и команда npm install.

Генератор случайных букв

Генерируйте случайные буквы A-Z. Выберите количество, верхний или нижний регистр либо смешанный вариант для игр, заданий и уроков.

Валидатор XSD

Проверьте XML-документ в соответствии с схемой XSD и выявите несоответствия между элементами и их типами, указав точные номера строк.

Генератор случайных адресов

Создавайте 1–20 похожих на адрес записей для макетов и тестов в трёх упрощённых форматах.

Конвертер размера файлов

Преобразуйте значения между байтами, КБ, МБ, ГБ, ТБ и двоичными единицами IEC (KiB, MiB, GiB, TiB), свободно сочетая десятичные и двоичные единицы.

Инструмент доступен на других языках

Руководства и сценарии использования