2010-04-15 14 views
12

Utilizzando Eclipse + PDT, so che è possibile specificare il tipo di ritorno di un metodo o il tipo di una variabile all'interno di un metodo tramite i suggerimenti tipo.PHP: digitare suggerimenti per campi con Eclipse PDT

E i campi delle classi? Posso dichiarare il tipo di un campo per abilitare il completamento automatico per quella variabile?

ho provato qualcosa sulla falsariga di:

class MyClass { 

    protected $Field; /* @var $Field MyType */ 

    ... 

ma non funziona.

C'è un modo per ottenere il completamento automatico dei campi di classe con Eclipse e PDT?

grazie,

Silvio

risposta

18

Sì, c'è! Basta semplicemente mettere il tipo var prima della dichiarazione, in questo modo:

/** 
* @var Type 
*/ 
protected $Field; 

Assicurarsi di utilizzare i commenti in stile javadoc (/ **, non solo/*) Ho trovato questo selezionando il campo nel "Outline "visualizza, quindi fai clic con il pulsante destro del mouse su> Origine> Genera commento elemento.

+0

Questo funziona per me, ma non vedo la sezione "Origine> Genera". C'è qualche altro plugin di eclipse che ho bisogno di installare per vederlo ?? –

+0

@ Matt Connolly: ho installato PDT tutto in uno e ce l'ho, nessun plugin aggiuntivo speciale. Quali voci vedi quando fai clic con il tasto destro su un elemento della vista Struttura? – greg0ire

+0

Non funziona per me in Indigo. – jsalvata

19

E se ne avete bisogno per una variabile locale non dichiarato è possibile utilizzare

/* @var $varname vartype */ 

Questo è molto utile se eseguire iterazioni su un array di oggetti con un foreach.

Si prega di notare che è necessario digitarlo con un asterisco/* e tutto in una riga. La dichiarazione deve essere inserita prima dell'uso della variabile.

+0

Non riesco a farlo funzionare in modo coerente. Funziona a volte - ma altre volte semplicemente no. Non riesco a trovare uno schema per questo. –

+0

Funziona molto bene con i miei nomi di classe. Hai aperto più di un progetto allo stesso tempo? Questo a volte confonde la mia eclissi. – Martin

+0

Grande funzionalità! Tuttavia, mi piacerebbe davvero sapere perché hanno scelto di usare la versione con asterisco, avere un ordine e nome diverso da "@ param" o l'altro "@ var" e richiedere anche il nome, anche se lo metti bene prima della variabile ... ma, beh, forse è solo per non confondere i programmatori PHP con troppa coerenza. –

Problemi correlati