<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >Como ler a definição de função (protótipo)</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="Sobre o manual" HREF="about.html"><LINK REL="PREVIOUS" TITLE="Sobre as notas de usuários" HREF="about.notes.html"><LINK REL="NEXT" TITLE="Versões do PHP documentadas neste manual" HREF="about.phpversions.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="sect1" 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="about.notes.html" ACCESSKEY="P" >Anterior</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >Apêndice T. Sobre o manual</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="about.phpversions.html" ACCESSKEY="N" >Próxima</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="sect1" ><H1 CLASS="sect1" ><A NAME="about.prototypes" >Como ler a definição de função (protótipo)</A ></H1 ><P > Cada função do manual é documentada para referência rápida, e conhecendo como ler e entender o manual fará com que a utilização do PHP seja muito mais fácil. Mais do que simplesmente estudar exemplos ou copiar e colar, você precisa saber como ler as definições de função (protótipo). Vamos começar: </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >Pré-requisito: Conhecimento básico dos <A HREF="language.types.html" >tipos</A >: </B > Mesmo sendo o PHP uma linguagem fracamente tipada, é importante ter um conhecimento básico dos <A HREF="language.types.html" >tipo</A > pois eles tem um significado importante. </P ></BLOCKQUOTE ></DIV ><P > Definições de função nos dizem que tipo de valor é <A HREF="functions.returning-values.html" >retornado</A >. Vamos utilizar a definição de <A HREF="function.strlen.html" ><B CLASS="function" >strlen()</B ></A > como nosso primeiro exemplo: </P ><P > <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" >strlen (PHP 3, PHP 4, PHP 5) strlen -- Obtêm o tamanho da string Description int strlen ( string str ) Retorna o comprimento da string.</PRE ></TD ></TR ></TABLE > </P ><P > <DIV CLASS="table" ><A NAME="AEN291269" ></A ><P ><B >Tabela T-1. Detalhamento da definição da função</B ></P ><TABLE BORDER="1" CLASS="CALSTABLE" ><COL><COL><THEAD ><TR ><TH >Parte</TH ><TH >Descrição</TH ></TR ></THEAD ><TBODY ><TR ><TD > strlen </TD ><TD > Nome da função. </TD ></TR ><TR ><TD > (PHP 3, PHP 4, PHP 5) </TD ><TD > strlen() está disponível em todos os PHP 3, PHP 4 e PHP 5 </TD ></TR ><TR ><TD > int </TD ><TD > Tipo do valor que esta função retorna, que no caso é um <A HREF="language.types.integer.html" ><B CLASS="type" >integer</B ></A > (no caso, o comprimento de uma string é medida em números). </TD ></TR ><TR ><TD > ( string str ) </TD ><TD > O primeiro (e neste caso, o único) parâmetro/argumento da função strlen() é chamado <CODE CLASS="parameter" >str</CODE >, e é uma <A HREF="language.types.string.html" ><B CLASS="type" >string</B ></A >. </TD ></TR ></TBODY ></TABLE ></DIV > </P ><P > Nos podemos reescrever a definição de função acima de maneira genérica: </P ><P > <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" >tipo retornado nome da função ( parametro tipo parametro tipo )</PRE ></TD ></TR ></TABLE > </P ><P > Muitas funções tem parâmetros múltiplos, como <A HREF="function.in-array.html" ><B CLASS="function" >in_array()</B ></A >. Seu protótipo é como: </P ><P > <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" >bool in_array ( mixed needle, array haystack [, bool strict])</PRE ></TD ></TR ></TABLE > </P ><P > O que isso significa? in_array() retorna um valor <A HREF="language.types.boolean.html" >booleano</A >, <TT CLASS="constant" ><B >TRUE</B ></TT > em caso de sucesso (se <CODE CLASS="parameter" >needle</CODE > foi encontrado em <CODE CLASS="parameter" >haystack</CODE >) ou <TT CLASS="constant" ><B >FALSE</B ></TT > em caso de falha (<CODE CLASS="parameter" >needle</CODE > não foi encontrado em <CODE CLASS="parameter" >haystack</CODE >). O primeiro parâmetro é chamado <CODE CLASS="parameter" >needle</CODE > e pode de ser de vários <A HREF="language.types.html" >tipos</A >, por isso nós dizemos que ele é "<SPAN CLASS="emphasis" ><I CLASS="emphasis" >mixed</I ></SPAN >". Esse <CODE CLASS="parameter" >needle</CODE > mixed (que nós estamos procurando) pode ser tanto um valor escalar (string, inteiro, ou <A HREF="language.types.float.html" >float</A >), ou um <A HREF="language.types.array.html" >array</A >. <CODE CLASS="parameter" >haystack</CODE > (o array onde nós estamos procurando) é o segundo parâmetro. O terceiro parâmetro <SPAN CLASS="emphasis" ><I CLASS="emphasis" >opcional</I ></SPAN > é chamado <CODE CLASS="parameter" >strict</CODE >. Todos os parâmetros opcionais aparecem dentro de <SPAN CLASS="emphasis" ><I CLASS="emphasis" >[</I ></SPAN > colchetes <SPAN CLASS="emphasis" ><I CLASS="emphasis" >]</I ></SPAN >. O manual diz que o default do parâmetro <CODE CLASS="parameter" >strict</CODE > é o booleano <TT CLASS="constant" ><B >FALSE</B ></TT >. Veja a página de do manual de cada função para detalhes de como elas funcionam. </P ><P > Existem funções com informações de versões do PHP mais complexas. Veja <A HREF="function.html-entity-decode.html" ><B CLASS="function" >html_entity_decode()</B ></A > como um exemplo: </P ><P > <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" >(PHP 4 >= 4.3.0, PHP 5)</PRE ></TD ></TR ></TABLE > </P ><P > Isto significa que esta função não está disponível no PHP 3, e somente foi disponibilizada a partir da versão do PHP 4.3.0. </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="about.notes.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="about.phpversions.html" ACCESSKEY="N" >Próxima</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Sobre as notas de usuários</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="about.html" ACCESSKEY="U" >Acima</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Versões do PHP documentadas neste manual</TD ></TR ></TABLE ></DIV ></BODY ></HTML >