blob: 2e02a994988d850dbbd130f14303c1052d4754e2 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
-->
<html>
<head>
<title>NetBeans IDE para o Editor do PHP</title>
<meta name="KEYWORDS" content="NETBEANS, PHP, editor">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="DESCRIPTION" content="NetBeans, PHP editor" >
<link rel="stylesheet" type="text/css" href="../../../netbeans.css" media="screen"></head>
<body>
<h1>NetBeans IDE para o Editor do PHP: Breve vis&atilde;o geral</h1>
<p>Este documento &eacute; uma breve vis&atilde;o geral dos principais recursos do NetBeans IDE para o Editor do PHP.</p>
<p><strong>Conte&uacute;do</strong></p><img src="../../../images_www/articles/71/netbeans-stamp.png" class="stamp" width="114" height="114" alt="O conte&uacute;do desta p&aacute;gina se aplica ao NetBeans IDE 7.1" title="O conte&uacute;do desta p&aacute;gina se aplica ao NetBeans IDE 7.1">
<ul>
<li><a href="#gettingReady">Prepara&ccedil;&atilde;o</a></li>
<li><a href="#editorLayout">Layout do NetBeans IDE para o Editor do PHP</a></li>
<li><a href="#SyntaxHighlighting">Realce de sintaxe</a></li>
<li><a href="#goToDeclaration">Ir para declara&ccedil;&atilde;o</a></li>
<li><a href="#Navigator">Navegador</a></li>
<li><a href="#CodeFolding">Dobramento de c&oacute;digo</a></li>
<li><a href="#SmartIndent">Recuo inteligente</a></li>
<li><a href="#Formatting">Formata&ccedil;&atilde;o</a></li>
<li><a href="#BracketCompletion">Conclus&atilde;o de colchete</a></li>
<li><a href="#instant-rename">Renomear refatora&ccedil;&atilde;o e Renomear instant&acirc;neo</a></li>
<li><a href="#CodeCompletion">Auto-completar de c&oacute;digo</a>
<ul>
<li><a href="#snippets">Trechos</a></li>
<li><a href="#contextSensitiveProposals">Propostas sens&iacute;veis a contexto</a></li>
<li><a href="#abbreviations">Modelos de c&oacute;digo e abreviaturas</a></li>
<li><a href="#cc-constructors">Auto-completar c&oacute;digo em construtores</a></li>
<li><a href="#cc-sql">Auto-completar c&oacute;digo SQL</a></li>
<li><a href="#cc-namespaces">Namespaces PHP 5.3</a></li>
<li><a href="#cc-overridden-methods">M&eacute;todos substitu&iacute;dos e implementados</a></li>
<li><a href="#clever-catch-cc">Preenchimento de c&oacute;digo inteligente tentar/obter</a></li>
</ul>
</li>
<li><a href="#rectangular">Sele&ccedil;&atilde;o retangular</a></li>
<li><a href="#phpdoc">Suporte ao PHPDocumentor</a></li>
<li><a href="#code-generators">Geradores de c&oacute;digo</a>
<ul>
<li><a href="#generate-constructors">Construtores</a></li>
<li><a href="#generate-getters-setters">Getters e setters</a></li>
<li><a href="#generate-overriden-methods">M&eacute;todos substitu&iacute;dos e implementados</a></li>
</ul></li>
<li><a href="#vartyp-cmnt">Definindo o tipo de vari&aacute;vel em coment&aacute;rios</a></li>
<li><a href="#ParameterHints">Dicas de par&acirc;metro</a></li>
<li><a href="#errorMessages">Mensagens de erro</a></li>
<li><a href="#phpunit">Testes PHPUnit e Selenium</a></li>
<li><a href="#spellchecker">Corretor ortogr&aacute;fico</a></li>
<li><a href="#symfony">Suporte ao Symfony e ao Zend a estrutura</a></li>
<li><a href="#smarty">Suporte ao Smarty</a></li>
</ul>
<p><b>Para seguir este tutorial, voc&ecirc; precisa dos seguintes recursos e softwares.</b></p>
<table>
<tbody>
<tr>
<th class="tblheader" scope="col">Software ou recurso</th>
<th class="tblheader" scope="col">Vers&atilde;o necess&aacute;ria</th>
</tr>
<tr>
<td class="tbltd1"><a target="_blank" href="https://netbeans.org/downloads/index.html">NetBeans IDE</a></td>
<td class="tbltd1">Pacote de download do PHP</td>
</tr>
<tr>
<td class="tbltd1">Um mecanismo PHP</td>
<td class="tbltd1">Vers&atilde;o 5
</tr>
<tr>
<td class="tbltd1">Um servidor Web</td>
<td>&Eacute; recomendado o <a target="_blank" href="http://httpd.apache.org/download.cgi">Apache HTTP Server 2.2</a>.<br></td>
</tr>
<tr>
<td class="tbltd1">Um depurador PHP</td>
<td><a target="_blank" href="http://www.xdebug.org">XDebug 2.0 ou posterior</a></td>
</tr>
</tbody>
</table>
<h2><a name="gettingReady"></a>Preparando</h2>
<p>Para desenvolver e fazer deployment de aplicativos PHP no NetBeans IDE para PHP, voc&ecirc; precisa ter todo o <a href="../../trails/php.html#configuration">software necess&aacute;rio instalado e configurado para desenvolvimento de PHP</a>. </p>
<h2><a name="editorLayout"></a>Layout do NetBeans IDE para o Editor do PHP</h2>
<p>O editor cont&eacute;m as seguintes janelas:</p>
<ul>
<li>A janela Editor mostra o arquivo quando voc&ecirc; est&aacute; editando. O Editor tem uma aba para cada arquivo aberto.</li>
<li>A janela Projetos mostra uma lista dos projetos existentes no momento</li>
<li>A janela Arquivos mostra os arquivos de cada projeto</li>
<li>A janela Servi&ccedil;os mostra listas de servi&ccedil;os externos dispon&iacute;veis atualmente como bancos de dados.</li>
</ul>
<p>Voc&ecirc; tamb&eacute;m pode abrir uma janela Navegador no painel esquerdo pressionando Ctrl + 7. O Navegador mostra a estrutura de uma classe PHP se ela estiver aberta no Editor. Os arquivos que n&atilde;o sejam de classe PHP n&atilde;o s&atilde;o mostrados na janela Navegador.</p>
<p>Para abrir a ajuda para uma desssas janelas, selecione qualquer elemento na janela e pressione F1.</p>
<h2><a name="SyntaxHighlighting"></a>Realce de sintaxe </h2>
<p>O editor fornece realce de sintaxe para blocos de c&oacute;digo PHP, HTML, JavaScript e CSS. </p>
<p>Os seguintes elementos de sintaxe s&atilde;o real&ccedil;ados na vers&atilde;o atual:</p>
<ul>
<li>Palavras-chave do PHP </li>
<li>Vari&aacute;veis do PHP </li>
<li>Constantes do PHP </li>
<li>Marcas HTML</li>
<li>Atributos de formul&aacute;rio de entrada de HTML</li>
<li>A linha atual &eacute; exibida com um segundo plano azul claro.</li>
<li>Ao colocar o cursor dentro de uma vari&aacute;vel PHP, uma fun&ccedil;&atilde;o ou uma classe, todas as ocorr&ecirc;ncias da vari&aacute;vel ser&atilde;o real&ccedil;adas. </li>
<li>As linhas onde tenham sido detectados erros s&atilde;o sublinhadas em vermelho. </li>
</ul>
<img src="../../../images_www/articles/71/php/editorguide/syntaxhighlighting.png" alt="A janela do NetBeans para editor do PHP mostra um fragmento de c&oacute;digo com os elementos de c&oacute;digo PHP e HTML real&ccedil;ados." class="margin-around"><br>
<p>Para alterar as configura&ccedil;&otilde;es de realce, escolha <tt>Ferramentas &gt; Op&ccedil;&otilde;es</tt> e alterne para a aba Fontes e cores. Especifique as configura&ccedil;&otilde;es que desejar.</p>
<h2><a name="goToDeclaration"></a>Ir para declara&ccedil;&atilde;o</h2>
Com a fun&ccedil;&atilde;o Ir para declara&ccedil;&atilde;o, o usu&aacute;rio navega de uma ocorr&ecirc;ncia de uma vari&aacute;vel ou fun&ccedil;&atilde;o para a linha onde a vari&aacute;vel ou fun&ccedil;&atilde;o &eacute; declarada ou inicializada. Para usar essa funcionalidade, posicione o cursor na vari&aacute;vel ou fun&ccedil;&atilde;o relevante e escolha Navegar &gt; Ir para a declara&ccedil;&atilde;o a partir do menu de contexto, pressione Ctrl-B/⌘-B ou use Ctrl-click.
<h2><a name="Navigator"></a>Janela do Navegador</h2>
<p>A janela do Navegador exibe as estruturas do c&oacute;digo como elementos de uma lista que mostra as estruturas PHP do arquivo ativo atual. Se o arquivo contiver quaisquer outras fontes de texto (por exemplo, HTML), a lista tamb&eacute;m exibe suas estruturas. Ao clicar duas vezes em uma fun&ccedil;&atilde;o ou uma vari&aacute;vel na lista, o cursor aponta para a declara&ccedil;&atilde;o do elemento clicado. </p>
<p class="alert"><b>Cuidado:</b> a janela do Navegador somente mostra o c&oacute;digo PHP para as classes PHP. Ela n&atilde;o pode mostrar c&oacute;digo PHP fora de uma classe.</p>
<p>A lista Navegador normalmente n&atilde;o cont&eacute;m quaisquer listas incorporadas, mas para comandos complexos ela pode conter estruturas incorporadas. Por exemplo, um comando de declara&ccedil;&atilde;o de classe PHP pode ser apresentado como uma &aacute;rvore de membros de classe declarada. </p>
<p>A lista &eacute; atualizada dinamicamente enquanto o usu&aacute;rio digita o c&oacute;digo. </p>
<p>A janela Navegador &eacute; mostrada na parte inferior do painel esquerdo.</p>
<ol>
<li>Para abrir a janela Navegador, pressione Ctrl + 7 ou v&aacute; para Janela &gt; Navega&ccedil;&atilde;o &gt; Navegador. A &aacute;rvore que exibe a hierarquia das estruturas de HTML e PHP &eacute; exibida.</li>
<li>Para mover para o elemento desejado, clique duas vezes no n&oacute; relevante na lista.
<br> <img src="../../../images_www/articles/71/php/editorguide/navigation.png" alt="A figura mostra um exemplo da utiliza&ccedil;&atilde;o da ferramenta de navega&ccedil;&atilde;o. A figura tamb&eacute;m mostra fun&ccedil;&otilde;es e classes dobradas e desdobradas." class="margin-around"> </li></ol>
<h2><a name="CodeFolding"></a>Dobramento de c&oacute;digo</h2>
<p>O editor permite que o usu&aacute;rio oculte e exiba de forma seletiva m&oacute;dulos, classes ou fun&ccedil;&otilde;es do arquivo editado atualmente com o c&oacute;digo-fonte PHP. Para recolher ou exibir uma parte de c&oacute;digo, clique no &iacute;cone - ou + &agrave; esquerda do c&oacute;digo ou pressione Ctrl+ ou Ctrl-. </p>
<h2><a name="SmartIndent"></a>Recuo inteligente</h2>
<p>O editor formata automaticamente o c&oacute;digo enquanto o usu&aacute;rio est&aacute; digitando. </p>
<h2><a name="Formatting"></a>Formata&ccedil;&atilde;o</h2>
<p>Para formatar uma parte de c&oacute;digo para que fique mais compreens&iacute;vel, realize as seguintes etapas:</p>
<ol>
<li>Selecione a passagem de c&oacute;digo relevante.</li>
<li>Do menu de contexto exibido ao clicar com o bot&atilde;o direito do mouse, escolha Formatar ou pressione Alt + Shift + F</li>
</ol>
<h2><a name="BracketCompletion"></a>Conclus&atilde;o de colchetes</h2>
<p>O editor automaticamente adiciona e remove aspas e colchetes correspondentes enquanto o usu&aacute;rio digita o c&oacute;digo. </p>
<ul>
<li>Pares de aspas simples ' ' e aspas duplas &quot;&quot; &quot;&quot;, par&ecirc;nteses () e colchetes [] s&atilde;o adicionados quando o usu&aacute;rio tiver digitado o primeiro s&iacute;mbolo.</li>
<li>No final de uma linha, um ponto-e-v&iacute;rgula &eacute; adicionado al&eacute;m das aspas simples ou duplas de encerramento.</li>
<li>A chave de encerramento &eacute; adicionada depois que o usu&aacute;rio pressiona Enter, o que tamb&eacute;m ativa a fun&ccedil;&atilde;o Recuo inteligente.</li>
<li>A exclus&atilde;o das aspas simples ou duplas, do par&ecirc;ntese ou do colchete de abertura causa a remo&ccedil;&atilde;o autom&aacute;tica do s&iacute;mbolo de encerramento correspondente mas n&atilde;o afeta o ponto-e-v&iacute;rgula do fim da linha.
<li>Quando o cursor aponta para um par&ecirc;ntese de encerramento ), uma chave de encerramento } ou um colchete de encerramento ], o s&iacute;mbolo de abertura correspondente &eacute; real&ccedil;ado em amarelo.
<br><img src="../../../images_www/articles/71/php/editorguide/paired-brackets-highlighting.png" alt="Quando o cursor aponta para um par&ecirc;ntese ou colchete de encerramento, o elemento de abertura correspondente &eacute; real&ccedil;ado." class="margin-around"></li>
</ul>
<h2><a name="instant-rename">Renomear refatora&ccedil;&atilde;o e Renomear instant&acirc;neo</a></h2>
<p>Voc&ecirc; pode renomear um elemento, como um nome de classe, em todos os arquivos em um projeto. O recurso for&ccedil;a voc&ecirc; a visualizar suas altera&ccedil;&otilde;es antes de poder faz&ecirc;-las. A janela de visualiza&ccedil;&atilde;o mostra cada localiza&ccedil;&atilde;o do elemento e permite excluir ocorr&ecirc;ncias individuais do elemento sendo renomeado.</p>
<p>Renomear refatora&ccedil;&atilde;o &eacute; contrastada com o recurso mais antigo, Renomear instant&acirc;neo. Renomear instant&acirc;neo ainda est&aacute; dispon&iacute;vel, mas somente funciona em contextos &quot;n&atilde;o p&uacute;blicos&quot;, como renomear uma vari&aacute;vel dentro de um m&eacute;todo ou renomear vari&aacute;veis e pastas privadas. Renomear instant&acirc;neo somente permite renomear um elemento dentro de um arquivo e n&atilde;o fornece uma janela de visualiza&ccedil;&atilde;o.</p>
<p>Para usar Renomear instant&acirc;neo, coloque o cursor em um nome que deseja alterar e pressione Ctrl+R. Se Renomear instant&acirc;neo se aplicar a tal vari&aacute;vel, todas as inst&acirc;ncias daquela vari&aacute;vel ou fun&ccedil;&atilde;o ser&atilde;o real&ccedil;adas.</p>
<img src="../../../images_www/articles/71/php/editorguide/refactor-ctrlr.png" width="551" height="361" alt="Editor de c&oacute;digo-fonte PHP ap&oacute;s Ctrl-R ser pressionado">
<p> Altere uma inst&acirc;ncia do nome e todas as outras inst&acirc;ncias ser&atilde;o alteradas simultaneamente</p>
<img src="../../../images_www/articles/71/php/editorguide/refactor-afterchange.png" width="551" height="359" alt="Editor c&oacute;digo-fonte PHP mostrando um nome de vari&aacute;vel refatorado">
<p>Para usar Renomear refatora&ccedil;&atilde;o, selecione o elemento que deseja renomear e pressione Ctrl+R, ou clique com o bot&atilde;o direito do mouse e selecione Refatorar &gt; Renomear. Uma caixa de di&aacute;logo &eacute; aberta para que voc&ecirc; renomeie o elemento.</p>
<img src="../../../images_www/articles/71/php/editorguide/rename-confirm.png" alt="Caixa de di&aacute;logo para renomear uma vari&aacute;vel" class="margin-around" >
<p>Renomeie o elemento e pressione Visualizar. A janela Refatora&ccedil;&atilde;o &eacute; aberta. Nessa janela, voc&ecirc; pode encontrar cada inst&acirc;ncia do elemento em seu projeto e pode decidir renome&aacute;-lo ou n&atilde;o.</p>
<img src="../../../images_www/articles/71/php/editorguide/refactoring.png" alt="Janela Refatora&ccedil;&atilde;o" class="margin-around" >
<p>Para obter mais informa&ccedil;&otilde;es sobre Renomear refatora&ccedil;&atilde;o, consulte o screencast <a href="../../docs/php/screencast-rename-refactoring.html">Renomear refatora&ccedil;&atilde;o e outros aprimoramentos no editor no NetBeans IDE 7.0 para PHP</a>.</p>
<h2><a name="CodeCompletion"></a>Auto-completar de c&oacute;digo</h2>
<p>O preenchimento de c&oacute;digo &eacute; um nome comum para um conjunto de recursos que aceleram o processo de codifica&ccedil;&atilde;o.</p>
<p>Os seguintes tipos de auto-completar de c&oacute;digo est&atilde;o dispon&iacute;veis: </p>
<ul>
<li><a href="#snippets">Trechos</a></li>
<li><a href="#contextSensitiveProposals">Propostas sens&iacute;veis a contexto</a></li>
<li><a href="#abbreviations">Abrevia&ccedil;&otilde;es</a></li>
<li><a href="#cc-constructors">Auto-completar c&oacute;digo em construtores</a></li>
<li><a href="#cc-sql">Auto-completar c&oacute;digo SQL</a></li>
<li><a href="#cc-namespaces">Namespaces PHP 5.3</a></li>
<li><a href="#cc-overridden-methods">M&eacute;todos substitu&iacute;dos e implementados</a></li>
</ul>
<div class="indent"><h3><a name="snippets"></a>Trechos </h3>
<p>Os trechos permitem que o usu&aacute;rio gere c&oacute;digo para v&aacute;rios elementos automaticamente.</p>
<ol>
<li>Escolha Ferramentas &gt; Paleta &gt; Fragmentos de c&oacute;digo. Uma paleta contendo v&aacute;rios elementos de interface do usu&aacute;rio aparece no painel direito.</li>
<li>Arraste o &iacute;cone necess&aacute;rio na paleta para a posi&ccedil;&atilde;o relevante no c&oacute;digo. Uma caixa de di&aacute;logo para especificar os par&acirc;metros dos elementos correspondentes aparece. Preencha os dados.</li>
<li>O c&oacute;digo que exibe o elemento escolhido &eacute; gerado e inserido no local escolhido.</li>
</ol>
<h3><a name="contextSensitiveProposals"></a>Propostas sens&iacute;veis a contexto </h3>
<p>O editor fornece propostas sens&iacute;veis a contexto para completar qualquer n&uacute;mero de s&iacute;mbolos iniciais de: </p>
<ul>
<li>Uma palavra-chave de PHP (por exemplo, if, else, elseif, while, switch, function e assim por diante) </li>
<li>Uma fun&ccedil;&atilde;o incorporada de PHP (por exemplo, substr, count, e assim por diante)</li>
<li>Uma vari&aacute;vel predefinida ou definida pelo usu&aacute;rio</li>
</ul>
<p>O editor sugere expans&otilde;es mas tamb&eacute;m fornece <a href="#ParameterHints">dicas de par&acirc;metros</a>. Para aplicar o Auto-completar de c&oacute;digo: </p>
<ol>
<li>Digite os s&iacute;mbolos iniciais da cadeia de caracteres necess&aacute;ria. </li>
<li>Pressione CTRL + espa&ccedil;o. Uma lista suspensa mostra as propostas sens&iacute;veis a contexto. Cada proposta &eacute; fornecida com uma descri&ccedil;&atilde;o e dicas de par&acirc;metro. O conte&uacute;do da lista &eacute; alterado &agrave; medida que voc&ecirc; continua digitando. </li>
<li>Para obter uma lista das palavras-chave de PHP dispon&iacute;veis no contexto atual, pressione CTRL + espa&ccedil;o sem nenhuma digita&ccedil;&atilde;o anterior.
<br> <img src="../../../images_www/articles/71/php/editorguide/codecompletionabbreviations.png" alt="Uma lista de propostas sens&iacute;veis a contexto. Cada proposta &eacute; fornecida com uma descri&ccedil;&atilde;o e dicas de par&acirc;metro." class="margin-around">
</li>
<li>Para obter uma dica sobre uma vari&aacute;vel, digite o s&iacute;mbolo &quot;$&quot;. Uma lista de todas as vari&aacute;veis locais e globais dispon&iacute;veis atualmente &eacute; exibida.
<br><img src="../../../images_www/articles/71/php/editorguide/code-completion-variables.png" alt="Uma lista de vari&aacute;veis &eacute; aberta depois que o usu&aacute;rio digita $. A lista cont&eacute;m vari&aacute;veis globais do PHP e vari&aacute;veis definidas pelo usu&aacute;rio." class="margin-around"> </li>
</ol>
<h3><a name="abbreviations"></a>Modelos de c&oacute;digo e abreviaturas</h3>
<p>No contexto atual, o termo &quot;abrevia&ccedil;&otilde;es&quot; refere-se a um conjunto de cadeias de caracteres predefinidas que correspondem &agrave;s palavras-chave utilizadas em uma linguagem de programa&ccedil;&atilde;o. Cada abrevia&ccedil;&atilde;o est&aacute; associada a um texto expandido que cont&eacute;m a palavra-chave completa e um modelo de c&oacute;digo para a palavra-chave com dicas de par&acirc;metro. Para aplicar esta funcionalidade, digite uma abrevia&ccedil;&atilde;o e pressione Tab. </p>
<img src="../../../images_www/articles/71/php/editorguide/abbreviations-type-abbr.png" alt="A abrevia&ccedil;&atilde;o &quot;cls&quot; para a palavra-chave &quot;class&quot; &eacute; digitada " class="margin-around"><br>
<p>A abrevia&ccedil;&atilde;o &eacute; substitu&iacute;da pela palavra-chave correspondente e o modelo de c&oacute;digo da palavra-chave &eacute; fornecido.</p>
<img src="../../../images_www/articles/71/php/editorguide/abbreviation-unfolded.png" alt="O texto completo da abrevia&ccedil;&atilde;o &eacute; exibido com um modelo de c&oacute;digo para defini&ccedil;&atilde;o de classe" class="margin-around"><br>
<p>Para exibir a lista de abrevia&ccedil;&otilde;es definidas com modelos de c&oacute;digo:</p>
<ol>
<li>Escolha <tt>Ferramentas &gt; Op&ccedil;&otilde;es &gt; Editor &gt; Modelos de c&oacute;digo</tt>. </li>
<li>A partir da lista suspensa Linguagem, selecione PHP. A lista de abrevia&ccedil;&otilde;es PHP e o modelo de c&oacute;digo definido para elas s&atilde;o exibidos.</li>
<li>Para adicionar ou remover uma defini&ccedil;&atilde;o da lista, utilize os bot&otilde;es Novo ou Remover respectivamente.</li>
<li>Para editar uma defini&ccedil;&atilde;o, selecione a linha relevante e edite o texto no campo de edi&ccedil;&atilde;o abaixo da lista. <br>
<img src="../../../images_www/articles/71/php/editorguide/code-template-definitions-list.png" alt="A lista de abrevia&ccedil;&otilde;es e os modelos de c&oacute;digo definidos para elas" width="536" height="513" class="margin-around"></li></ol>
<p>Para obter mais informa&ccedil;&otilde;es, consulte <a href="../../docs/php/code-templates.html">Modelos de c&oacute;digo no NetBeans IDE para PHP</a>.</p>
<h3><a name="cc-constructors"></a>Preenchimento de c&oacute;digo para construtores</h3>
<p>Depois da <tt>nova</tt> palavra-chave, a janela de auto-completar c&oacute;digo &eacute; exibida com construtores e par&acirc;metros de todas as classes dispon&iacute;veis no projeto.</p>
<img src="../../../images_www/articles/71/php/editorguide/cc-constructor.png" width="600" height="408" alt="Dicas do auto-completar c&oacute;digo para um construtor" class="margin-around" border="1">
<h3><a name="cc-sql"></a>Preenchimento de c&oacute;digo SQL</h3>
<p>O autocompletar c&oacute;digo SQL &eacute; exibido quando uma string come&ccedil;a com a palavra-chave do SQL &quot;select&quot;. O primeiro passo &eacute; selecionar a conex&atilde;o do banco de dados.</p>
<img src="../../../images_www/articles/71/php/editorguide/cc-sql.png" height="384" width="475" alt="Auto-completar c&oacute;digo oferecendo conex&atilde;o do banco de dados" border="1" class="margin-around">
<p>S&atilde;o exibidas todas as conex&otilde;es do banco de dados registradas com o IDE.</p>
<img src="../../../images_www/articles/71/php/editorguide/cc-sql-dbconnections.png" alt="Todas as conex&otilde;es do banco de dados registradas com o IDE" width="554" height="185" class="margin-around">
<p>Ap&oacute;s selecionar a conex&atilde;o, o auto-completar c&oacute;digo SQL oferece todas as tabelas de tal conex&atilde;o do banco de dados. </p>
<p><img src="../../../images_www/articles/71/php/editorguide/cc-sql-tables.png" height="384" width="494" alt="Todas as tabelas da conex&atilde;o do banco de dados wishlist" class="margin-around" border="1"></p>
<p>Se a tabela tiver colunas, tais colunas tamb&eacute;m s&atilde;o exibidas.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/cc-sql-columns.png" height="358" width="530" class="margin-around" alt="Colunas exibidas da tabela" border="1"></p>
<p>o auto-completar c&oacute;digo SQL tamb&eacute;m funciona com aliases de tabela.</p>
<img src="../../../images_www/articles/71/php/editorguide/cc-sql-aliases.png" alt="Auto-completar c&oacute;digo SQL mostrando tabelas no alias hotel" height="352" width="537" border="1" class="margin-around">
<h3><a name="cc-namespaces"></a>Espa&ccedil;os de nome do PHP 5.3</h3>
<p>O autocompletar de c&oacute;digo suporta nomes namespace n&atilde;o qualificados, parcialmente qualificados e totalmente qualificados a partir do PHP 5.3. Para mais informa&ccedil;&otilde;es, consulte nosso <a href="../../docs/php/namespace-code-completion-screencast.html">screencast</a>.</p>
<h3><a name="cc-overridden-methods"></a>M&eacute;todos substitu&iacute;dos e implementados</h3>
<p>Autocompletar de c&oacute;digo entre membros de classe oferece substituir ou implementar m&eacute;todos.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/cc_overriden_methods.png" alt="Autocompletar c&oacute;digo oferecendo substituir o m&eacute;todo" width="600" height="478" class="margin-around"></p>
<h3><a name="clever-catch-cc"></a>Preenchimento de c&oacute;digo inteligente tentar/obter</h3>
<p>A partir do NetBeans IDE 7.1, o preenchimento de c&oacute;digo para declara&ccedil;&otilde;es <tt>catch</tt> inclui somente as classes que herdam de <tt>Exce&ccedil;&atilde;o</tt>.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/clever-catch-cc.png" alt="Editor mostrando o preenchimento inteligente do c&oacute;digo em par&acirc;metros catch" width="491" height="166" class="margin-around b-all"></p>
</div>
<h2><a name="rectangular"></a>Sele&ccedil;&atilde;o retangular</h2>
<p>O NetBeans IDE 7.1 para PHP introduz a a&ccedil;&atilde;o Sele&ccedil;&atilde;o retangular. Essa fun&ccedil;&atilde;o de edi&ccedil;&atilde;o &eacute; &uacute;til em casos como a exclus&atilde;o de n&uacute;meros de linhas em c&oacute;digo colado.</p>
<p>Para ativar a sele&ccedil;&atilde;o retangular, pressione o bot&atilde;o Sele&ccedil;&atilde;o retangular ou Ctrl+Shift+R para alternar.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/rec-selec-togglebutton.png" alt="Editor mostrando o bot&atilde;o Sele&ccedil;&atilde;o retangular para alternar" width="600" height="321" class="margin-around b-all"></p>
<p>Quando a Sele&ccedil;&atilde;o retangular est&aacute; ativada, voc&ecirc; pode fazer a sele&ccedil;&atilde;o com o mouse ou com o teclado. Quando voc&ecirc; usa o teclado, coloque o cursor em um canto, mantenha Shift pressionado e selecione o que deseja com as teclas de seta.&nbsp;</p>
<p><img src="../../../images_www/articles/71/php/editorguide/rec-selec-made.png" alt="Editor mostrando uma sele&ccedil;&atilde;o retangular de n&uacute;meros de linhas colados" width="600" height="289" class="margin-around b-all"></p>
<p>Se voc&ecirc; escrever um texto enquanto a &aacute;rea estiver selecionada, o texto ser&aacute; colocado em cada linha na &aacute;rea selecionada. Isso pode ser &uacute;til, por exemplo, para alterar simultaneamente os modificadores de acesso de v&aacute;rios campos em uma classe.&nbsp;</p>
<p><img src="../../../images_www/articles/71/php/editorguide/rec-selec-addtext.png" alt="Editor com um modificador de acesso adicionado em todas as linhas em uma sele&ccedil;&atilde;o retangular" width="435" height="342" class="margin-around b-top b-right"></p>
<h2><a name="phpdoc"></a>Suporte ao PHPDocumentor</h2>
<p>O suporte incorporado ao PHPDocumentor foi inclu&iacute;do no NetBeans IDE 7.0. Para obter mais informa&ccedil;&otilde;es, consulte o screencast <a href="screencast-phpdoc.html">Gerando documenta&ccedil;&atilde;o PHP com o NetBeans IDE</a>.</p>
<p class="alert"><b>Aviso:</b> o PHPDocumentor n&atilde;o suporta completamente o PHP 5.3. Espa&ccedil;os de nome e alguns outros recursos do 5.3 n&atilde;o s&atilde;o documentados pelo PHP Documentor.</p>
<h2><a name="code-generators"></a>Geradores de c&oacute;digo</h2>
<p>Ao pressionar a combina&ccedil;&atilde;o Alt-Insert (Ctrl-I no Mac), um menu abre com todas os poss&iacute;veis geradores de c&oacute;digo. A lista de geradores &eacute; sens&iacute;vel ao contexto. Isso depende da posi&ccedil;&atilde;o do cursor no c&oacute;digo quando a chave de combina&ccedil;&atilde;o &eacute; pressionada. Dependendo da sua posi&ccedil;&atilde;o no c&oacute;digo, &eacute; poss&iacute;vel gerar uma conex&atilde;o de banco de dados, tabelas de banco de dados, texto lorum ipsum e v&aacute;rios outros. Esta se&ccedil;&atilde;o descreve apenas os geradores de c&oacute;digo a seguir:</p>
<ul>
<li><a href="#generate-constructors">Construtores</a></li>
<li><a href="#generate-getters-setters">Getters e setters</a></li>
<li><a href="#generate-overriden-methods">M&eacute;todos substitu&iacute;dos e implementados</a></li>
</ul>
<div class="indent">
<h3><a name="generate-constructors"></a>Construtores</h3>
<p>&Eacute; poss&iacute;vel gerar construtores ao pressionar Alt-Insert (Ctrl-I no Mac) quando o cursor estiver dentro de um corpo de classe, mas n&atilde;o dentro de nenhuma fun&ccedil;&atilde;o contida neste corpo. Ao selecionar Gerar... Construtor, uma caixa de di&aacute;logo abre listando os campos que podem ser inicializados pelo construtor. Os nomes de campo s&atilde;o utilizados como par&acirc;metros do construtor.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/generate-constructor-fields.png" alt="Caixa de di&aacute;logo dos campos pra inicializar com o construtor" width="352" height="299" class="margin-around"></p>
<p>Voc&ecirc; pode selecionar nenhum campo. Nesse caso, o IDE gera um construtor vazio, sem par&acirc;metros. Se o campo for uma classe com propriedades, &eacute; poss&iacute;vel selecionar propriedades individuais ou &eacute; poss&iacute;vel selecionar a classe, j&aacute; que todas as propriedades de classe est&atilde;o selecionadas automaticamente.</p>
<p>Para mais informa&ccedil;&otilde;es, consulte a <a target="_blank" href="http://blogs.sun.com/netbeansphp/entry/generate_constructor_getters_and_setters">publica&ccedil;&atilde;o no blog NetBeans PHP</a>.</p>
<h3><a name="generate-getters-setters"></a>Getters e setters</h3>
<p>&Eacute; poss&iacute;vel gerar getters e setters ao pressionar Alt-Insert (Ctrl-I no Mac) quando o cursor estiver dentro de um corpo de classe e selecionar Getter, Setter ou Getters e setters. Apenas as fun&ccedil;&otilde;es poss&iacute;veis s&atilde;o exibidas. Por exemplo, se j&aacute; possuir setters dispon&iacute;veis para as propriedades, apenas a op&ccedil;&atilde;o getter aparece.</p>
<p>Ao selecionar Gerar... Getter/Setter/Getter e setter, uma caixa de di&aacute;logo aparece com as propriedades para que seja poss&iacute;vel gerar um getter ou setter. As propriedades s&atilde;o exibidas em uma &aacute;rvore. Se voc&ecirc; selecionar uma classe principal, s&atilde;o selecionadas automaticamente todas as propriedades da classe.</p>
<p>&Eacute; poss&iacute;vel nomear um getter ou setter de acordo com a conven&ccedil;&atilde;o getName ou a conven&ccedil;&atilde;o get_name.</p>
<p>Para mais informa&ccedil;&otilde;es, consulte a <a target="_blank" href="http://blogs.sun.com/netbeansphp/entry/generate_constructor_getters_and_setters">publica&ccedil;&atilde;o no blog NetBeans PHP</a> original e a publica&ccedil;&atilde;o <a target="_blank" href="http://blogs.sun.com/netbeansphp/entry/generating_getters_and_setters_improved">gera&ccedil;&atilde;o de getter e setter aprimorada</a>.</p>
<h3><a name="generate-overriden-methods"></a>M&eacute;todos substitu&iacute;dos e implementados</h3>
<p>&Eacute; poss&iacute;vel gerar m&eacute;todos substitu&iacute;dos ou implementados ao pressionar Alt-Insert (Ctrl-I no Mac) quando o cursor estiver dentro de uma declara&ccedil;&atilde;o de classe e existirem v&aacute;rios membros de classe. Uma caixa de di&aacute;logo abre mostrando os m&eacute;todos que podem ser inseridos e indicando se eles est&atilde;o substitu&iacute;dos ou implementados.</p>
<p><img class="margin-around" src="../../../images_www/articles/71/php/editorguide/generate_overriden_methods.png" alt="Caixa de di&aacute;logo para a gera&ccedil;&atilde;o de m&eacute;todos substitu&iacute;dos" width="523" height="520"></p>
<p>Esse recurso conclui a dica &quot;Implemente todos os m&eacute;todos abstratos&quot; e <a href="#cc-overridden-methods">autocompletar de c&oacute;digo para m&eacute;todos substitu&iacute;dos e implementados</a>.</p>
<p>Para mais informa&ccedil;&otilde;es, consulte a <a target="_blank" href="http://blogs.sun.com/netbeansphp/entry/generate_overriden_implemented_methods">publica&ccedil;&atilde;o no blog NetBeans PHP</a>.</p>
</div>
<h2><a name="ParameterHints"></a>Dicas de par&acirc;metro </h2>
<p>O editor solicita ao usu&aacute;rio os par&acirc;metros formais de uma fun&ccedil;&atilde;o ou um m&eacute;todo no contexto onde a fun&ccedil;&atilde;o ou o m&eacute;todo &eacute; chamado.</p>
<ol>
<li>Digite os caracteres iniciais da fun&ccedil;&atilde;o que deseja chamar. </li>
<li>Pressione CTRL + espa&ccedil;o. Uma lista suspensa mostra as propostas sens&iacute;veis a contexto com os par&acirc;metros formais de cada proposta.<br>
<img src="../../../images_www/articles/71/php/editorguide/parametr-hint-one.png" alt="Lista de dicas sens&iacute;veis a contexto" class="margin-around">
</li>
<li>Escolha a proposta relevante e pressione Enter. O nome da fun&ccedil;&atilde;o escolhida &eacute; inserido no c&oacute;digo e um modelo para inserir os par&acirc;metros &eacute; mostrado entre colchetes. <br>
<img src="../../../images_www/articles/71/php/editorguide/parametr-hint-two.png" alt="Dicas de par&acirc;metro para a proposta sens&iacute;vel a contexto escolhida." class="margin-around">
</li>
</ol>
<h2><a name="vartyp-cmnt"></a>Definindo o tipo de vari&aacute;vel em coment&aacute;rios</h2>
<p>&Eacute; poss&iacute;vel definir uma vari&aacute;vel e o seu tipo em um coment&aacute;rio. O coment&aacute;rio deve estar no formato <em>/* @<strong>var</strong> $variable type */ </em>. Se o coment&aacute;rio estiver escrito corretamente, a marca&ccedil;&atilde;o <em><strong>var</strong></em> estar&aacute; em negrito.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/vardoc-basic.png" height="319" width="600" alt="Vari&aacute;veis declaradas em coment&aacute;rios" class="margin-around" border="1"> </p>
<p>&Eacute; poss&iacute;vel utilizar o modelo de c&oacute;digo <tt>vdoc</tt>, seguido de Tabula&ccedil;&atilde;o, para gerar um coment&aacute;rio que define uma vari&aacute;vel. O nome da vari&aacute;vel &eacute; selecionado e pode ser alterado. Pressione Tab novamente e o tipo &eacute; selecionado.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/vardoc-template.png" height="269" width="600" alt="Vari&aacute;vel declarando coment&aacute;rio gerado pelo modelo vdoc" class="margin-around" border="1"> </p>
<p>O modelo de c&oacute;digo define o nome e o tipo da vari&aacute;vel automaticamente. Se a vari&aacute;vel for utilizada ap&oacute;s o lugar no qual voc&ecirc; inseriu o modelo, o nome seguinte de tal vari&aacute;vel ser&aacute; sugerido por padr&atilde;o. Se nenhuma vari&aacute;vel for utilizada ap&oacute;s o lugar no qual voc&ecirc; inseriu o modelo, mas houver uma vari&aacute;vel utilizada acima do modelo, o nome de tal vari&aacute;vel ser&aacute; sugerido por padr&atilde;o. Se o NetBeans IDE n&atilde;o for capaz de localizar nenhuma vari&aacute;vel perto de onde voc&ecirc; utilizar o modelo, o nome padr&atilde;o &eacute; <em>vari&aacute;vel</em>.&nbsp; O tipo de vari&aacute;vel &eacute; definido automaticamente de acordo com as mesmas regras.</p>
<img src="../../../images_www/articles/71/php/editorguide/vardoc-template-names.png" alt="Vari&aacute;vel declarando coment&aacute;rio gerado pelo modelo vdoc, com nomes e tipos de vari&aacute;vel padr&atilde;o" class="margin-around" border="1" height="385" width="600">
<h2><a name="errorMessages"></a>Mensagens de erro</h2>
<p>O editor analisa a sintaxe do c&oacute;digo enquanto voc&ecirc; digita e marca os erros de sintaxe sublinhando as linhas com erro e colocando um marcador vermelho ao lado delas. Para obter uma explica&ccedil;&atilde;o do erro, passe o cursor do mouse sobre a linha com erro ou clique no marcador vermelho. Uma dica de ferramenta aparece com uma breve explica&ccedil;&atilde;o do erro. <br>
<img src="../../../images_www/articles/71/php/editorguide/error-messaging-m1.png" alt="Mensagem de erro: uma dica de ferramenta sobre a linha com erro." class="margin-around">
</p>
<h2><a name="phpunit"></a>Testes PHPUnit e Selenium</h2>
<p>O NetBeans IDE para PHP suporta os testes automatizados <a target="_blank" href="http://www.phpunit.de">PHPUnit</a>, incluindo a cobertura de c&oacute;digo. A partir do NetBeans IDE 7.1, voc&ecirc; pode usar grupos de teste em seu c&oacute;digo.</p>
<p>O NetBeans IDE tamb&eacute;m suporta a estrutura de teste port&aacute;til Selenium em combina&ccedil;&atilde;o com o PHPUnit. Um plug-in Selenium est&aacute; dispon&iacute;vel no Centro de atualiza&ccedil;&otilde;es. A instala&ccedil;&atilde;o deste plug-in adiciona um servidor Selenium nos servidores registrados do IDE e adiciona op&ccedil;&otilde;es de teste Selenium aos menus PHP.</p>
<p>Consulte <a href="./phpunit.html">Testando com PHPUnit e Selenium</a> para obter mais informa&ccedil;&otilde;es.</p>
<h2 id="spellchecker">Corretor ortogr&aacute;fico</h2>
<p>Um corretor ortogr&aacute;fico est&aacute; dispon&iacute;vel. Na caixa de di&aacute;logo Op&ccedil;&otilde;es, voc&ecirc; pode alternar entre ativar e desativar o corretor ortogr&aacute;fico para diferentes idiomas.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/spellchecker-options.png" class="margin-around" alt="Caixa de di&aacute;logo Op&ccedil;&otilde;es para o corretor ortogr&aacute;fico" width="600" height="448"></p>
<p>Na caixa de di&aacute;logo Op&ccedil;&otilde;es, voc&ecirc; pode adicionar e remover novos dicion&aacute;rios e definir a localidade.&nbsp; Quando desejar adicionar um novo dicion&aacute;rio, voc&ecirc; ter&aacute; que ter um arquivo com as palavras. O formato do arquivo do dicion&aacute;rio &eacute; uma lista de palavras com cada palavra em uma nova linha. Voc&ecirc; ter&aacute; que informar ao NetBeans a codifica&ccedil;&atilde;o do arquivo do dicion&aacute;rio e para qual localidade o arquivo dever&aacute; ser usado. </p>
<p><img src="../../../images_www/articles/71/php/editorguide/spellchecker-newdictionary.png" class="margin-around" alt="Adicionando um novo dicion&aacute;rio para o corretor ortogr&aacute;fico" width="600" height="180"></p>
<p>Quando o corretor ortogr&aacute;fico encontra uma palavra que n&atilde;o est&aacute; em seu dicion&aacute;rio, ele sublinha a palavra em vermelho. O corretor ortogr&aacute;fico tamb&eacute;m adiciona uma dica de ferramenta &agrave;quela palavra que diz &quot;Erro de ortografia&quot;. Observe que o texto HTML &eacute; verificado em arquivos PHP.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/spellchecker-html.png" alt="Erros encontrados no texto HTML em um arquivo PHP" width="600" height="68" class="margin-around"></p>
<h2><a name="symfony"></a>Suporte &agrave; estrutura Symfony e Zend</h2>
<p>Suporte &agrave; estrutura Symfony e Zend s&atilde;o embutidos no editor PHP. Ele reconhece as estruturas Symfony existentes e &eacute; poss&iacute;vel adicionar a estrutura a novos projetos no &uacute;ltimo painel do assistente para novo projeto PHP.</p>
<p>Em um projeto PHP com suporte ao Symfony ou Zend, &eacute; poss&iacute;vel executar os comandos do Symfony ou do Zend a partir do menu de contexto do projeto.</p>
<img src="../../../images_www/articles/71/php/editorguide/symfony-contextmenu-commands.png" alt="Menu de contexto mostrando os comandos do Symfony" class="margin-around">
<p>Use a IU dos comandos para:</p>
<ul>
<li>Filtrar os comandos do Symfony/Zend (1)</li>
<li>Especificar os par&acirc;metros do comando (2)</li>
<li>Selecionar um comando (3)</li>
<li> Ver a ajuda de contexto do comando (4) </li>
<li>Visualizar todo o comando que ser&aacute; executado (5)</li>
</ul>
<img src="../../../images_www/articles/72/php/editorguide/symfony-command-dialog.png" class="margin-around" alt="Caixa de di&aacute;logo do comando do Symfony anotado">
<p>A lista de comandos &eacute; espec&iacute;fica do projeto. Isso significa que, por exemplo, se for utilizado Doctrine em vez de Propel, nenhum comando do Propel ser&aacute; listado, apenas os comandos do Doctrine ser&atilde;o listados. Tamb&eacute;m, todos os comandos dos plug-ins Symfony do projeto est&atilde;o dispon&iacute;veis.</p>
<p>Autocompletar de c&oacute;digo inclui vari&aacute;veis Symfony nas visualiza&ccedil;&otilde;es Symfony e vari&aacute;veis Zend nas visualiza&ccedil;&otilde;es Zend. </p>
<img src="../../../images_www/articles/72/php/editorguide/symfony-variables.png" alt="Vari&aacute;veis do Symfony no auto-completar c&oacute;digo" class="margin-around" border="1">
<p>O IDE tamb&eacute;m oferece atalhos de navega&ccedil;&atilde;o entre as visualiza&ccedil;&otilde;es e as a&ccedil;&otilde;es do Symfony e do Zend. Esses atalhos foram aprimorados no NetBeans 6.9. Al&eacute;m disso, o autocompletar de c&oacute;digo em <em>visualizar</em> modelos/arquivos inclui vari&aacute;veis que s&atilde;o declarados nos arquivos <em>controlador/a&ccedil;&atilde;o</em>. Consulte a <a target="_blank" href="http://blogs.sun.com/netbeansphp/entry/framework_support_improvements">publica&ccedil;&atilde;o no blog do NetBeans PHP</a> para detalhes.</p>
<p>Para saber mais sobre o suporte da estrutura Zend, assista o <a href="../../docs/php/zend-framework-screencast.html">screencast</a> do Symfony.</p>
<h2><a name="smarty"></a>Suporte ao Smarty</h2>
<p>O NetBeans IDE 7.1 inclui um plug-in para o suporte &agrave; estrutura Smarty. Esse suporte inclui os recursos b&aacute;sicos do Smarty 3, ou seja, preenchimento de c&oacute;digo e delimitadores do Smarty 3.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/smarty3.png" alt="Editor mostrando o suporte b&aacute;sico ao Smarty 3" width="364" height="136" class="margin-around b-all"></p>
<p>Alterne entre o comportamento de Smarty 3 e Smarty 2 na janela Op&ccedil;&otilde;es. V&aacute; para Ferramentas &gt; Op&ccedil;&otilde;es (Prefer&ecirc;ncias do NetBeans no MacOS), selecione PHP e, a seguir, abra a aba Smarty. O plug-in da estrutura Smarty deve estar instalado.</p>
<p><img src="../../../images_www/articles/71/php/editorguide/smarty-options.png" alt="Op&ccedil;&otilde;es do Smarty" width="586" height="480" class="margin-around"></p>
<h2><a href="/about/contact_form.html?to=3&amp;subject=Feedback:%20PHP%20Editor%20Guide">Envie-nos seus coment&aacute;rios</a></h2>
<br style="clear:both;" >
<p>Para enviar coment&aacute;rios e sugest&otilde;es, obter suporte e manter-se informado sobre os desenvolvimentos mais recentes dos recursos de desenvolvimento em PHP no NetBeans IDE, <a href="../../../community/lists/top.html">junte-se &agrave; lista de usu&aacute;rios users@php.netbeans.org</a>.</p>
<p><a href="../../trails/php.html">Voltar &agrave; trilha do aprendizado PHP</a></p>
</body>
</html>