PHP é uma das linguagens de programação mais utilizadas no desenvolvimento web. Uma das características mais importantes desta linguagem é que ela oferece diferentes métodos de limitação. Vamos dar uma breve olhada nas tags de abertura e fechamento do PHP:

  • <?php ?>
  • <?= ?>
  • <? ?>
  • <% %>

Para utilizar o PHP de forma mais eficiente, é necessário entender as diferenças e a importância dessas tags. Neste artigo, aprenderemos como usar tags PHP de maneira eficaz.

Por que não devemos usar tags PHP curtas?

Tags PHP curtas podem ser mais úteis para facilitar e acelerar a codificação. Porém, na maioria das hospedagens e servidores ele está desabilitado por padrão na configuração do PHP.ini. Na configuração do PHP.ini para que essas tags curtas funcionem short_open_tag a opção deve estar ativada. Portanto, o único método que definitivamente funcionará em todos os servidores PHP é . Se você está pensando em implantar seu PHP em um servidor que você não controla, você sempre pode <?php ?> Você deve usar a abordagem.

Tag de eco PHP curta e PHP.ini

<?php echo() ?>

em PHP <?= tag na configuração do PHP short_open_tag Ele pode ser usado com a opção habilitada ou não, então você pode usar este atalho com segurança em vez do acima.
Se você está apenas escrevendo código para si mesmo e pode controlar a configuração do PHP que usa, você pode achar tags curtas mais úteis. Mas lembre-se disso <? ?> tag pode entrar em conflito com declarações XML. Também <% %> A tag é na verdade no estilo ASP.

Tags de fechamento de PHP e possíveis problemas

Fechar um arquivo PHP puro (por exemplo, um arquivo contendo apenas uma definição de classe) ?> Ao adicionar a tag, tome cuidado para não deixar linhas em branco. Embora o interpretador PHP possa "executar" com segurança um único caractere de quebra de linha após a tag de fechamento, outras quebras de linha podem ser enviadas para o navegador. Se você estiver escrevendo cabeçalhos HTTP, as coisas podem ficar ainda mais confusas.

PHP PSR-2

O padrão de codificação PSR-2 faz parte dos padrões de codificação PHP PSR criados para determinar as melhores práticas em PHP. Os padrões de codificação PSR-2 aplicam-se apenas a arquivos que contêm código PHP. ?> recomenda não usar tags de fechamento. O principal motivo desta recomendação é evitar que caracteres como espaços ou quebras de linha deixados acidentalmente após a tag de fechamento sejam enviados ao navegador. Em PHP, ?> Qualquer caractere após a tag é automaticamente considerado parte da saída HTML. Isto pode ser especialmente problemático ao processar cabeçalhos HTTP.

Caracteres desnecessários no final de um arquivo PHP podem impedir que os cabeçalhos HTTP sejam processados ​​corretamente. No protocolo HTTP, qualquer saída impossibilita o envio de cabeçalhos porque os cabeçalhos devem ser concluídos antes do envio do conteúdo. Isso causa um problema conhecido como cabeçalhos já enviados, que pode afetar ações como iniciar uma sessão, definir um cookie ou redirecionar uma página.

Portanto, o PSR-2 recomenda não utilizar a tag de fechamento em arquivos contendo apenas código PHP, para evitar erros tão comuns e preservar a limpeza do código. Esta abordagem elimina possíveis problemas que podem ocorrer devido a espaços indesejados ou caracteres de fim de linha no final do código e contribui para uma operação mais estável e livre de erros dos scripts PHP.

Tags PHP e compatibilidade

Ao escrever aplicações web para versões mais antigas, fechar ?> html com tags <!doctype> Tenha cuidado para não deixar uma nova linha entre as tags. Versões mais antigas do IE podem gerar erros diferentes se encontrarem espaços, incluindo novas linhas, antes da declaração do tipo de documento. Este não é o caso das versões mais recentes do IE e de outros navegadores mais avançados. (Ou seja, para todos os navegadores que não sejam o IE.)