Capítulo 6 . Sintaxe básica

Índice
Alternado/Escaping do HTML
Separador de instruções
Comentários

Alternado / Escaping do HTML

Quando o PHP interpreta um arquivo , ele simplesmente repassa o texto do arquivo até encontrar uma das tags especiais que lhe diz para começar a interpretar o texto como código PHP . O interpretador então executa todo o código que encontra , até chegar em uma tag de fechamento PHP , que novamente o coloca simplesmente repassando texto novamente . Este é o mecanismo que permite a inclusão de código PHP dentro do HTML : qualquer coisa fora das tags PHP é deixado como encontrado , enquanto tudo dentro é interpretado e executado .

quatro conjuntos de tags que podem ser usadas para marcar blocos de código PHP . Delas , somente duas ( ?php . . . ? e script language="php " . . . / script ) são sempre disponíveis . As outras podem ser ativadas ou desativadas a partir do arquivo de configuração php.ini . Enquanto as formas reduzidas das tags ou no seu estilo ASP serem convenientes , elas não são portáveis em todas as versões . Além disso , se você pretende incluir código PHP em XML ou XHTML , você precisará usar a forma ?php .. . ? para compatibilidade com o padrão XML .

As tags suportadas pelo PHP são :

Exemplo 6-1 . Maneiras de alternar do HTML

 
1

 
.

 
?php

 
echo(

 
"se

 
você

 
precisa

 
dispor

 
documentos

 
XHTML

 
ou

 
XML

 
,

 
use

 
assim\n")

 
;

 
?




 
2

 
.

 
?

 
echo

 
(

 
"este

 
é

 
o

 
mais

 
simples

 
,

 
como

 
uma

 
instrução

 
de

 
processamento

 
SGML\n")

 
;

 
?

 
?=

 
espressao

 
?




 
Uma

 
redução

 
de

 
"

 
?

 
echo

 
expressao

 
?

 
"

 
3

 
.

 
script

 
language="php

 
"

 
echo

 
("alguns

 
editores

 
(como

 
o

 
FrontPage

 
)

 
não

 
gostam

 
de

 
processas

 
instruções")

 
;

 
/

 
script

 
4

 
.

 
%

 
echo

 
("Você

 
também

 
pode

 
usar

 
tags

 
ASP

 
opcionalmente")

 
;

 
%

 
%=

 
$variavel

 
;

 
#

 
Uma

 
redução

 
para

 
"

 
%

 
echo

 
..

 
.

 
"

 
%





O primeiro método , ?php . . . ? , é o preferencial , que ele permite o uso do PHP em códigos padrão XML como o XHTML .

O segundo método pode não estar sempre disponível . Tags curtas estão disponíveis apenas quando ativadas . Isto pode ser realizando através da função short_tags( ) (PHP 3 somente ) , ativando a diretiva de configuração short_open_tag no arquivo de configuração do PHP ou compilando o PHP com a opção --enable-short-tags no configure . Mesmo que ele esteja configurado por default no php.ini-dist , o uso de tags curtas é desencorajado .

A quarta maneira está disponível se a tag estilo ASP for ativada utilizando a diretiva asp_tags no arquivo de configuração .

Nota : O suporte as tags estilo APS foi incorporada na versão 3.0.4 .



Nota : A utilização das tags curtas deve ser evitada quando do desenvolvimento de aplicações ou bibliotecas com intenção de redistribuição ou no desenvolvimento de serviços em PHP que não ficarão sob seu controle , uma vez que as tags curtas podem não estar disponíveis no servidor de instalação . Para portabilidade de código para distribuição , tenha certeza de não usar tags curtas .

A tag de fechamento incluirá uma linha nova linha em branco automaticamente se uma não estiver presente . Além , a tag de fechamento automaticamente implica num ponto e vírgula : você não precisa ter um ponto e vírgula no fim da última linha de código PHP .

O PHP também suporta a utilização de estruturas como essa :

Exemplo 6-2 . Alternagem avançada

 
?php

 
if

 
(

 
$expression

 
)

 
{

 
?

 
strong

 
Isso

 
é

 
verdadeiro

 
.

 
/

 
strong

 
?php

 
}

 
else

 
{

 
?

 
strong

 
Isto

 
é

 
falso

 
.

 
/

 
strong

 
?php

 
}

 
?



Isso funciona como esperado porque quando o PHP encontra a tag de fechamento ? , ele simplesmente começa a imprimir tudo até encontrar outra tag de abertura. Obviamente, o exemplo acima se aplica a exibição de grandes blocos de texto, uma vez que sair do modo de interpretação do PHP é geralmente mais eficiente que imprimir todo o texto através de funções como echo() , print() e outras.