Sophie

Sophie

distrib > Mandriva > 2008.1 > i586 > by-pkgid > 703d980c580707c382b4e43e25965bc5 > files > 226

php-manual-pt_BR-5.2.4-1mdv2008.1.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>assert</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Manual do PHP"
HREF="index.html"><LINK
REL="UP"
TITLE="PHP Opções e Informações"
HREF="ref.info.html"><LINK
REL="PREVIOUS"
TITLE="assert_options"
HREF="function.assert-options.html"><LINK
REL="NEXT"
TITLE="dl"
HREF="function.dl.html"><META
HTTP-EQUIV="Content-type"
CONTENT="text/html; charset=UTF-8"></HEAD
><BODY
CLASS="refentry"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Manual do PHP</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="function.assert-options.html"
ACCESSKEY="P"
>Anterior</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="function.dl.html"
ACCESSKEY="N"
>Próxima</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="function.assert"
></A
>assert</H1
><DIV
CLASS="refnamediv"
><A
NAME="AEN176119"
></A
><P
>    (PHP 4, PHP 5)</P
>assert&nbsp;--&nbsp;Confere se uma afirmação é <TT
CLASS="constant"
><B
>FALSE</B
></TT
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN176123"
></A
><H2
>Descrição</H2
>int <B
CLASS="methodname"
>assert</B
> ( mixed assertion )<BR
></BR
><P
>&#13;     <B
CLASS="function"
>assert()</B
> se a afirmação
     <CODE
CLASS="parameter"
>assertion</CODE
> é falsa e toma a ação apropriada.
    </P
><P
>&#13;     Se o parâmetro <CODE
CLASS="parameter"
>assertion</CODE
> é dado como uma string ela
     será avaliada como código PHP pela função <B
CLASS="function"
>assert()</B
>.
     As vantagens da  string <CODE
CLASS="parameter"
>assertion</CODE
> são menor sobrecarga
     quando conferir se a afirmação é verdadeira e mensagens contendo
     <CODE
CLASS="parameter"
>assertion</CODE
> quando a afirmação é falsa. Isto indica que se 
     você passar uma condição booleana(verdadeiro ou falso) como
     <CODE
CLASS="parameter"
>assertion</CODE
> esta condição não será mostrado como parâmetro
     da função de afirmação, o qual você deve ter definido com a função
     <A
HREF="function.assert-options.html"
><B
CLASS="function"
>assert_options()</B
></A
>, a condição é convertida para uma string antes
     que a função gerenciadora seja chamada e o booleano <TT
CLASS="constant"
><B
>FALSE</B
></TT
>
     é convertido para uma string vazia.
    </P
><P
>&#13;     Afirmações devem ser usadas apenas com a intenção de eliminar erros. Você deve usa-las
     para testar condições que devam ser sempre <TT
CLASS="constant"
><B
>TRUE</B
></TT
> e que indiquem algum erro de programação
     se não for ou para verificar a existência de certas coisas como a disponibilidade de funções
     de algum módulo ou limites e recursos do sistema.
    </P
><P
>&#13;     Afirmações não devem ser usadas para operações em tempo de execução normais como para
     conferir certo valor de entrada. Como uma dica de uso, o seu código deve funcionar
     corretamente mesmo que o teste de afirmações não esteja ativado.
    </P
><P
>&#13;     O funcionamento de <B
CLASS="function"
>assert()</B
> pode ser configurado por
     <A
HREF="function.assert-options.html"
><B
CLASS="function"
>assert_options()</B
></A
> ou pelas configurações descritas na pagina do
     manual para estas funções.
    </P
><P
>&#13;     A função <A
HREF="function.assert-options.html"
><B
CLASS="function"
>assert_options()</B
></A
> e/ou a diretiva de configuração
     ASSERT_CALLBACK permitem configurar uma função para ser chamada no caso de
     falha da afirmação.
    </P
><P
>&#13;     Funções chamadas a partir de falhas de <B
CLASS="function"
>assert()</B
> são particularmente 
     úteis quando estiver criando sistemas automáticos para testes porque permitem que você
     capture facilmente o código passado para a afirmação em conjunto com informações sobre
     onde a afirmação foi feita. Enquanto esta informação pode ser capturada por outros 
     métodos, usar afirmações torna muito mais fácil e rápido!
    </P
><P
>&#13;     A função utilizada para processar as afirmações devem aceitar três argumentos. O primeiro
     irá conter o arquivo onde houve a falha na afirmação. O segundo argumento irá conter a linha
     onde a afirmação falhou e o terceiro argumento irá conter  a expressão que falhou (se
     houver alguma - valores literais como 1 ou "dois" não serão passados por
     este argumento).
    </P
><P
> 
     <TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
CLASS="EXAMPLE"
><TR
><TD
><DIV
CLASS="example"
><A
NAME="AEN176154"
></A
><P
><B
>Exemplo 1. Gerenciado uma afirmação que falhou com uma função do usuário</B
></P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><code><font color="#000000">
<font color="#0000BB">&lt;?php<br /></font><font color="#FF8000">// Ativa as afirmações e as deixa quietas<br /></font><font color="#0000BB">assert_options</font><font color="#007700">(</font><font color="#0000BB">ASSERT_ACTIVE</font><font color="#007700">, </font><font color="#0000BB">1</font><font color="#007700">);<br /></font><font color="#0000BB">assert_options</font><font color="#007700">(</font><font color="#0000BB">ASSERT_WARNING</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">);<br /></font><font color="#0000BB">assert_options</font><font color="#007700">(</font><font color="#0000BB">ASSERT_QUIET_EVAL</font><font color="#007700">, </font><font color="#0000BB">1</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Cria a função do usuário que será chamada quando a afirmação falhar<br /></font><font color="#007700">function </font><font color="#0000BB">my_assert_handler</font><font color="#007700">(</font><font color="#0000BB">$file</font><font color="#007700">, </font><font color="#0000BB">$line</font><font color="#007700">, </font><font color="#0000BB">$code</font><font color="#007700">)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo </font><font color="#DD0000">"&lt;hr&gt;Afirmação falhou:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Arquivo '$file'&lt;br /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Linha '$line'&lt;br /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Código '$code'&lt;br /&gt;&lt;hr /&gt;"</font><font color="#007700">;<br />}<br /><br /></font><font color="#FF8000">// Define a função<br /></font><font color="#0000BB">assert_options</font><font color="#007700">(</font><font color="#0000BB">ASSERT_CALLBACK</font><font color="#007700">, </font><font color="#DD0000">'my_assert_handler'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;&nbsp;Faz uma afirmação que irá falhar<br /></font><font color="#0000BB">assert</font><font color="#007700">(</font><font color="#DD0000">'mysql_query ("")'</font><font color="#007700">);<br /></font><font color="#0000BB">?&gt;</font>
</font>
</code></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
>
    </P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="function.assert-options.html"
ACCESSKEY="P"
>Anterior</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Principal</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="function.dl.html"
ACCESSKEY="N"
>Próxima</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>assert_options</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="ref.info.html"
ACCESSKEY="U"
>Acima</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>dl</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>