Netbeans Auto-compeletion no método da classe php

6

Eu criei um projeto PHP no NetBeans 7.3. Eu tenho uma classe ( MYSQL_DB ). Quando eu quero acessar seus métodos dentro do arquivo que eu defini a classe me mostra isto:

Observequeesseéoladoexternodadefiniçãodeclasse(nãousando$this).Masquandoeuqueroacessarseusmétodosforadessearquivo,elenãomemostranada:

P: Existe alguma maneira de mostrar métodos ao digitar o nome da classe (como a primeira imagem) em todos os arquivos?
Obrigado antecipadamente!

    
por undone 05.09.2013 / 00:29

2 respostas

5

Eu suspeito que o problema é que o NetBeans não conhece a classe de sua variável. (Isso acontece muito no PHP, sendo fracamente digitado). Logo após você atribuir o valor à variável, coloque um comentário de dica de tipo especial:

$database=someFunction(); /* @var $database DatabaseClass */

Esta dica dirá ao Netbeans o tipo de $ database, permitindo que ele sugira métodos. Se você tiver controle sobre a fonte de someFunction, também poderá adicionar uma dica. Consulte o link para obter muitos exemplos.

    
por 05.09.2013 / 00:55
3

Comece adicionando comentários como dicas de código onde as variáveis são declaradas. Nas propriedades de classe, use a notação de formato longo para comentários:

/**
 * @var \ClassName $varname
 */
 private $varname;

Nas turmas, você normalmente pode usar os comentários internos:

/* @var \ClassName $inlinevar */
$inlinevar = new ClassName();

Talvez seja necessário limpar seu cache, o que ajudará quando o preenchimento automático não funcionar nas classes do mesmo projeto. No Linux, procure em seu diretório home ~ / .cache / .netbeans / e remova o subdiretório da versão do projeto (sempre faça o backup primeiro, caso algo dê errado).

Se sua turma vive em outro projeto, talvez seja necessário adicionar o caminho para a pasta raiz do outro projeto, para que o Netbeans possa verificar essa pasta em busca de definições de classe.

    
por 30.10.2013 / 21:16