mirror of
https://github.com/php/doc-pt_br.git
synced 2026-03-23 22:52:12 +01:00
git-svn-id: https://svn.php.net/repository/phpdoc/pt_BR/trunk@314030 c90b9560-bf6c-de11-be94-00142212c4b1
238 lines
8.3 KiB
XML
238 lines
8.3 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!-- EN-Revision: n/a Maintainer: ae Status: ready -->
|
|
<chapter xml:id="language.basic-syntax" xmlns="http://docbook.org/ns/docbook">
|
|
<title>Sintaxe Básica</title>
|
|
<sect1 xml:id="language.basic-syntax.phpmode">
|
|
<title>Escapando o HTML</title>
|
|
<para>
|
|
Quando o PHP interpreta um arquivo, ele procura pelas tags de abertura e fechamento,
|
|
as quais indicam para o PHP começar e parar de interpretar o código
|
|
entre elas. Interpretar desta maneira permite ao PHP ser embutido em todos
|
|
os tipos de documentos, já que tudo, fora o par
|
|
de tags de abertura e fechamento é ignorado pelo interpretador do PHP.
|
|
Na maioria das vezes você verá o PHP embutido em documentos HTML
|
|
como neste exemplo.
|
|
<informalexample>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<p>Isto vai ser ignorado.</p>
|
|
<?php echo 'Enquanto isto vai ser interpretado.'; ?>
|
|
<p>Isto também vai ser ignorado.</p>
|
|
]]>
|
|
</programlisting>
|
|
</informalexample>
|
|
</para>
|
|
<para>
|
|
Você também pode usar estruturas mais avançadas:
|
|
<example>
|
|
<title>Escapando de modo avançado</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
if ($expression) {
|
|
?>
|
|
<strong>Isto é verdadeiro.</strong>
|
|
<?php
|
|
} else {
|
|
?>
|
|
<strong>Isto é falso.</strong>
|
|
<?php
|
|
}
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
Isto funciona como o esperado, porque o quando PHP atinge o ?> fechando
|
|
as tags, ele simplesmente começa a enviar para a saída qualquer coisa (exceto
|
|
newlines em seguida - veja <link
|
|
linkend="language.basic-syntax.instruction-separation">separação de instruções</link>)
|
|
que encontre até que atinja outra tag de abertura. O exemplo dado aqui é
|
|
resumido, claro, mas para escrever grandes blocos de texto, sair do modo de
|
|
interpretação do PHP é geralmente mais eficiente do que enviar todo
|
|
o texto atráves de <function>echo</function> ou
|
|
<function>print</function>.
|
|
</para>
|
|
<para>
|
|
Existem quatro diferentes pares de tags de abertura e fechamento
|
|
que podem ser usados com o PHP. Duas dessas, <?php ?> e
|
|
<script language="php"> </script>, estão sempre disponíveis.
|
|
As outras duas são tags curtas e tags no estilo <productname>ASP</productname>,
|
|
e podem ser ativadas e desativadas a partir do arquivo de configuração &php.ini;.
|
|
Assim, ao passo que algumas pessoas acham as tags curtas e tags no estilo
|
|
<productname>ASP</productname> conveniente, elas são menos portáveis,
|
|
e geralmente não recomendadas.
|
|
<note>
|
|
<para>
|
|
Também note que se você está embutindo o PHP no XML ou XHTML
|
|
você irá precisar usar as tags <?php ?> para continuar
|
|
cumprindo com os padrões.
|
|
</para>
|
|
</note>
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<title>Abrindo e Fechando as Tags do PHP</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
1. <?php echo 'se você quer servir documentos XHTML ou XML, faça assim'; ?>
|
|
|
|
2. <script language="php">
|
|
echo 'alguns editores (como o FrontPage) não
|
|
gostam de instruções de processamento';
|
|
</script>
|
|
|
|
3. <? echo 'esta é a mais simples, uma instrução de processamento SGML'; ?>
|
|
<?= expressão ?> Isto é um atalho para "<? echo expressão ?>"
|
|
|
|
4. <% echo 'Você pode opcionalmente usar tags no estilo ASP'; %>
|
|
<%= $variavel; # Isto é um atalho para "<% echo . . ." %>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
</para>
|
|
<para>
|
|
Enquanto as tags vistas nos exemplos um e dois estão
|
|
ambas sempre disponíveis, o exemplo um é mais comumente
|
|
usado, e recomendado, das duas.
|
|
</para>
|
|
<para>
|
|
Tags curtas (exemplo três) estão disponíveis apenas quando são ativadas
|
|
pela configuração <link linkend="ini.short-open-tag">short_open_tag</link>
|
|
no arquivo &php.ini; ou se o PHP foi configurado com
|
|
a opção <option>--enable-short-tags</option>.
|
|
</para>
|
|
<para>
|
|
Tags no estilo <productname>ASP</productname> (exemplo quatro estão disponíveis apenas
|
|
quando elas estão ativadas atráves da diretiva de configuração <link linkend="ini.asp-tags">asp_tags</link>
|
|
no arquivo &php.ini;.
|
|
</para>
|
|
<para>
|
|
<note>
|
|
<para>
|
|
O uso de tags curtas deve ser evitado ao desenvolver aplicações
|
|
ou bibliotecas que serão redistribuídas, ou serão usadas em
|
|
servidores PHP que não estão sobre o seu controle, porque as tags curtas
|
|
podem não ser suportadas no servidor em questão. Para código portável,
|
|
redistribuível, tenha certeza de não usar tags curtas.
|
|
</para>
|
|
</note>
|
|
</para>
|
|
</sect1>
|
|
<sect1 xml:id="language.basic-syntax.instruction-separation">
|
|
<title>Separação de instruções</title>
|
|
<para>
|
|
Como no C ou Perl, o PHP requer que as instruções sejam terminadas
|
|
com um ponto-e-vírgula ao final de cada comando. A tag de fechamento de
|
|
um bloco de código PHP automaticamente implica em um ponto-e-vírgula; você
|
|
não precisa ter um ponto-e-vírgula terminando a última linha de um
|
|
bloco PHP. A tag de fechamento irá incluir uma nova linha logo após, se
|
|
estiver presente.
|
|
<informalexample>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
echo 'Isto é um teste';
|
|
?>
|
|
|
|
<?php echo 'Isto é um teste' ?>
|
|
|
|
<?php echo 'Nós omitimos a última tag de fechamento';
|
|
]]>
|
|
</programlisting>
|
|
</informalexample>
|
|
<note>
|
|
<para>
|
|
A tag de fechamento de um bloco PHP ao final de um arquivo é opcional,
|
|
e em alguns casos omiti-la é útil ao usar <function>include</function>
|
|
ou <function>require</function>, assim espaço em branco indesejado não
|
|
irá aparecer ao final dos arquivos, e você ainda será capaz de adicionar
|
|
cabeçalhos a resposta após. Também é útil se você usar output
|
|
buffering, e você não quer ter adicionado um espaço em branco ao final
|
|
das partes geradas por arquivos incluídos.
|
|
</para>
|
|
</note>
|
|
</para>
|
|
</sect1>
|
|
<sect1 xml:id="language.basic-syntax.comments">
|
|
<title>Comentários</title>
|
|
<para>
|
|
O PHP suporta comentários no estilo 'C', 'C++' e shell do Unix shell (estilo Perl). Por exemplo:
|
|
<informalexample>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
echo 'Isto é um teste'; // Estilo de comentário de uma linha em c++
|
|
/* Este é um comentário de múltiplas linhas
|
|
ainda outra linha de comentário */
|
|
echo 'Isto é ainda outro teste';
|
|
echo 'Um teste final'; # Este é um comentário de uma linha no estilo shell
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
</informalexample>
|
|
</para>
|
|
<simpara>
|
|
Os comentários de estilo "uma linha" apenas comentam até o final da linha
|
|
ou do bloco PHP de código corrente, o que chegar primeiro.
|
|
Isto significa que o código HTML após <literal>// ... ?></literal>
|
|
ou <literal># ... ?></literal> SERÁ exibido:
|
|
?> Interrompe o modo PHP e retorna para o modo HTML, e
|
|
<literal>//</literal> ou <literal>#</literal> não podem influenciar isto.
|
|
Se a diretiva de configuração <link linkend="ini.asp-tags">asp_tags</link>
|
|
estiver ativa, ela funciona da mesma maneira que <literal>// %></literal> e
|
|
<literal># %></literal>.
|
|
Entretando, a tag <literal></script></literal> não interrompe o modo PHP
|
|
em um comentário de uma linha.
|
|
</simpara>
|
|
<para>
|
|
<informalexample>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<h1>Isto é um <?php # echo 'simples';?> exemplo.</h1>
|
|
<p>O cabeçalho acima irá dizer 'Isto é um exemplo'.</p>
|
|
]]>
|
|
</programlisting>
|
|
</informalexample>
|
|
</para>
|
|
<simpara>
|
|
Comentários no estilo 'C' termina ao primeiro <literal>*/</literal> encontrado.
|
|
Tenha certeza de não aninhar comentários no estilo 'C'. É fácil fazer este
|
|
engano se você esta tentando comentar grandes blocos de código.
|
|
</simpara>
|
|
<para>
|
|
<informalexample>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
/*
|
|
echo 'Isto é um teste'; /* Este comentário irá causar um problema */
|
|
*/
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
</informalexample>
|
|
</para>
|
|
</sect1>
|
|
</chapter>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|