Texto de Modelo vs. Código PHP
# Texto de Modelo vs. Código PHP
Colocando Seu Servidor Web PHP em Funcionamento
Quando você está começando com PHP, é importante entender como visualizar seu código em um navegador web. Se seu arquivo PHP não for nomeado index.php, você precisará especificar seu nome ao acessá-lo. Por exemplo, se você estiver trabalhando com um arquivo chamado hello.php, você precisará navegar para localhost:8000/hello.php em seu navegador após iniciar o servidor web PHP com o comando php -S localhost:8000.
Às vezes, você pode encontrar um erro indicando que a porta que você está tentando usar (tipicamente 8000) já está em uso. Se isso acontecer, simplesmente tente uma porta alternativa como 8001, 8080 ou 8888. Também é uma boa ideia investigar qual aplicativo já está usando essa porta – você pode ter outro servidor web em execução em segundo plano. Embora executar vários servidores web não seja inerentemente um problema, é geralmente melhor testar apenas um de cada vez para garantir que você esteja vendo as respostas do aplicativo com o qual pretende trabalhar. Se você tiver consistentemente conflitos de porta, poderá rastrear o processo usando as ferramentas do seu sistema operacional e interrompê-lo, ou reiniciar seu computador.
Misturando Estrutura e Lógica: Texto de Modelo e Código PHP
A popularidade do PHP no desenvolvimento web deriva de sua capacidade de integrar perfeitamente HTML (e outras tecnologias web como CSS e JavaScript) para exibição em um navegador. Uma página PHP típica não é apenas HTML bruto; é uma combinação cuidadosamente construída de dois componentes principais: texto de modelo estático e conteúdo gerado dinamicamente.
Considere o carrinho de compras de uma loja online. Um desenvolvedor não precisa criar um arquivo HTML separado para cada configuração de carrinho possível. Em vez disso, um único script PHP combina um modelo reutilizável – contendo elementos como o cabeçalho HTML, a barra de navegação e o logotipo da empresa – com código PHP que preenche dinamicamente os detalhes do carrinho: nomes de itens, preços, quantidades e mais. Esta mistura permite uma base estruturada, ao mesmo tempo que fornece conteúdo personalizado e orientado a dados.
Esta poderosa combinação é o motivo pelo qual estamos usando as tags <?php e ?> em nossos scripts. Qualquer texto fora destas tags é tratado como texto de modelo simples e é exibido exatamente como aparece no arquivo. Inversamente, qualquer coisa dentro destas tags é interpretada como código PHP e executada. Esta distinção permite a criação de páginas web dinâmicas que são visualmente consistentes e responsivas às interações do usuário e aos dados.
Compreendendo Texto de Modelo e Código PHP
Ao trabalhar com PHP, é crucial diferenciar entre texto simples (frequentemente chamado de "texto de modelo") e código PHP real. Eles são intercalados dentro de um arquivo PHP para produzir a saída final. A forma como o PHP interpreta estas seções depende de como elas são marcadas.
Quando uma linha contém apenas código PHP – por exemplo, uma declaração print – apenas a tag de abertura <?php é necessária. No entanto, se o código PHP é seguido por texto de modelo, você deve incluir a tag de fechamento ?>. Vamos ilustrar isso com um exemplo.
Uma Demonstração Simples
Crie um novo arquivo PHP, que estamos chamando hello2.php, seja no seu ambiente online preferido (como Replit) ou usando um IDE local. Cole o seguinte conteúdo neste arquivo:
I am template text, not PHP code.
print "Hello, world!\n";
I am more template text.
Agora, execute este script a partir da sua linha de comando usando o comando php hello2.php. Você observará a seguinte saída:
I am template text, not PHP code.
print "Hello, world!\n";
I am more template text.
Note como todo o conteúdo do arquivo é impresso literalmente, incluindo o código PHP. Isso acontece porque o script carece de delimitadores adequados. PHP não sabe onde o código PHP começa e termina, então trata tudo como texto de modelo. A inclusão inesperada da palavra-chave print, aspas e ponto e vírgula na saída destaca este problema.
O prompt do terminal aparecendo imediatamente após a última linha é outra consequência disso. Espaços em branco extras e caracteres de nova linha são tratados como parte do texto de modelo e são exibidos diretamente, fazendo com que o terminal comece um novo prompt sem adicionar uma quebra de linha extra. Se o arquivo terminasse com uma linha em branco, o prompt do terminal estaria em sua própria linha.
Corrigindo o Script
Para corrigir isto, precisamos delinear claramente o bloco de código PHP. Aqui está o arquivo hello2.php corrigido, com as mudanças destacadas:
I am template text, not PHP code.
<?php
print "Hello, world!\n";
?>
I am more template text.
Ao adicionar as tags <?php e ?>, nós explicitamente dizemos ao PHP para interpretar a linha contendo print "Hello, world!\n"; como código PHP. Agora, quando você executar o script, o PHP executará a declaração print e produzirá "Hello, world!" para o console, enquanto trata as outras linhas como texto simples. Esta distinção é fundamental para estruturar adequadamente aplicações PHP.