Chaves do PHP em nova linha

Esta página coloca cada chave de abertura do PHP em uma linha própria, com a chave de fechamento alinhada a ela: o estilo que costuma ser chamado de Allman. Cole um trecho em que as chaves estejam no fim da linha ou todas em uma mesma linha, e os blocos sairão alinhados verticalmente.

Como colocar as chaves em nova linha

  1. 1

    Cole o trecho

    Adicione o código na caixa de código PHP, com as chaves onde elas estiverem.

  2. 2

    Escolha a indentação

    Selecione 2 ou 4 espaços para o conteúdo de cada bloco.

  3. 3

    Continue

    Abra a página de resultado para ver o código reformatado.

  4. 4

    Copie o código

    Confirme se os blocos estão alinhados e então copie.

Posicionamento das chaves nesta ferramenta

A ferramenta tem um único layout e não oferece opção para mudá-lo: cada { começa na sua própria linha, cada } fica em uma linha própria e o conteúdo interno é indentado um nível. Por isso, else e catch começam em uma nova linha depois da chave de fechamento.

Entrada com as chaves no fim da linha:

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

Resultado:

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

Qual estilo você deve usar?

Guias de estilo comuns em PHP colocam a chave de abertura de uma classe ou de um método em uma linha própria, enquanto estruturas de controle como if e foreach mantêm a chave na mesma linha da instrução. Esta ferramenta aplica o layout de nova linha em todos os casos. Isso é correto para classes e métodos, e uma escolha deliberada para o restante. Se o seu projeto segue a convenção mista, você precisará juntar de volta, à mão, as chaves das estruturas de controle.

Observações práticas

  • Blocos aninhados continuam avançando, então um laço dentro de um método dentro de uma classe fica com três níveis de profundidade.
  • Chaves de fechamento são seguidas de uma quebra de linha, então um } e o código depois dele nunca compartilham a mesma linha.
  • Chaves dentro de comentários e de textos semelhantes a strings, como heredocs, são contadas como chaves reais e podem alterar o layout.
  • Não existe opção para manter a chave de abertura na mesma linha da instrução. Esta página não consegue produzir esse estilo.

Exemplo com uma classe

Entrada:

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

Resultado com 4 espaços:

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

A chave da classe e a do método ficam cada uma em sua linha, e o corpo do método é indentado um nível a mais do que a propriedade acima dele. As chaves de fechamento alinham-se com a linha que as abriu, então você pode relacionar os blocos a olho.

Como misturar com o seu próprio estilo

Se apenas alguns blocos precisam mudar, cole somente esses blocos. O resultado é fácil de mesclar de volta em um arquivo por copiar e colar, porque cada bloco termina na sua chave de fechamento. Não cole um fragmento que comece ou termine no meio de um bloco, porque a profundidade de indentação começa em zero e não vai combinar com o arquivo ao redor.

Perguntas frequentes

Não. A ferramenta sempre move a chave de abertura para a sua própria linha.

Classes e métodos costumam usá-lo. Estruturas de controle como if e foreach frequentemente mantêm a chave na mesma linha, o que esta ferramenta não faz.

Cada chave de fechamento encerra a sua linha, então o que vem depois dela começa na linha seguinte.

Ela trata qualquer bloco com chaves da mesma forma, então esses blocos também são indentados. Leia o resultado para confirmar se os rótulos de case estão corretos.

Ferramentas relacionadas

Ferramenta disponível em outros idiomas

Guias e casos de uso