Domanda

Nonostante cosa alcuni potrebbero dire, credo che il completamento del codice (noto anche come Intellisense) sia la seconda migliore invenzione quando si tratta di editor di codice (la prima è la colorazione della sintassi).Rende davvero più semplice la codifica perché non devo preoccuparmi di aver chiamato la funzione CalculateReportSums, ReportSumsCalculate o semplicemente GetReportSums.

Sfortunatamente non ho ancora trovato un editor di codice che implementi in modo soddisfacente questa funzionalità per PHP.E per "soddisfacente" intendo "buono quanto Visual Studio per C#".

La mia prima scelta come editor di testo è Notepad++, ma ha solo un elenco di funzioni integrate di PHP e appare solo dopo aver premuto Ctrl+SPACE.Ho anche provato Eclipse+PDT, che è migliore, ma spesso presenta dei singhiozzi, a volte fallisce del tutto senza una ragione apparente (nessun elenco disponibile) e appare sempre solo quando metto in pausa la digitazione (impostando il timeout su un valore piccolo si verifica l'errore elenco per non apparire del tutto).

Allora, c'è qualcosa di meglio là fuori?Qualcosa che sarebbe consapevole di tutte le variabili nell'ambito attuale, che sarebbe in grado di seguire include()s e visualizzerebbe l'elenco in tempo reale mentre scrivo?

So che PHP è un linguaggio dinamico e in linea di principio un perfetto completamento del codice è impossibile (perché non si sa quali variabili saranno presenti fino al momento dell'esecuzione), ma dovrebbe essere comunque possibile implementarlo a un livello abbastanza buono - molto meglio di quello che ho visto finora.

Aggiunto: Per aggiungere alcuni punti minori: voglio che il CC sia istantaneo, come in Visual Studio.Digito un carattere e l'elenco viene visualizzato nello stesso istante.Digito un altro carattere e l'elenco diventa grande la metà prima ancora che possa battere ciglio.Utilizzo della CPU quasi pari a zero, risultati istantanei (tutti acclamano gli dei della memorizzazione nella cache!).

Inoltre, mi va bene documentare le mie funzioni e persino le variabili in un modo speciale.Preferisco la sintassi PHPLint (perché così potrò controllare il mio codice in seguito), ma andranno bene anche altre sintassi.Forzare a farlo è positivo anche per la tua disciplina nei commenti.:)

È stato utile?

Soluzione

Ho scoperto che Netbeans ha il completamento del codice meglio di Aptana. Quando lavoravo con CodeIgniter, Netbeans sarebbe codice completo per i miei metodi statici in modelli in cui Aptana no.

Dato che il mio distacco di questo, JetBrains ha rilasciato PhpStorm e ha il vostro intellisense fuoco rapido, così come ancora meglio tipo di hinting. E 'assolutamente superiore a tutti gli altri IMHO. Sono stato tramite EAP 2.0 per diversi mesi ora.

Altri suggerimenti

Hai ragione che IntelliSense è molto più complicato in un linguaggio tipizzato in modo dinamico come PHP. Si consideri ad esempio

  function get_foo($x) {
       return $x ? new abc() : new xyz();
  }

  get_foo(123)->... can your IDE autocomplete here?

Non so su PDT, ma Netbeans è in grado di gestire questa situazione, e PhpED richiede 'get_foo' essere annotato in modo speciale.

Non ho ancora provato il prossimo WebIDE da JetBrains ( http: // www .jetbrains.com / webide / caratteristiche / index.html ), ma sembra essere molto promettente in questo senso (vedi screenshot).

Non c'è dubbio, usare NetBeans, è molto utile e hanno una buona intellisense (ok, non è perfetto), ma è meglio di Eclipse per esempio.

NetBeans .Il suo libero. è disponibile per tutte le piattaforme, e soprattutto è un bene per la modifica php, jsp, java, css, html, ... Buon per SVN, Mercurial, più è possibile integrarlo con easyly kenai.com ...

si aiuta con il tipo IntelliSense di pop-up.

credimi, sto usando per lo sviluppo di PHP e la sua l'IDE più adatto posso trovare ...

Utilizzo PHPEd (http://www.nusphere.com/) che ha una versione funzionante di questa funzionalità.

Nota:Hanno un'offerta elencata sulla loro prima pagina. Ignora questo.È stato terminando domani ormai da almeno 4 anni.

Io lo prendo siete su Windows. In Windows Io di solito uso phpDesigner ( http://www.mpsoftware.dk/phpdesigner.php ), che ha abbastanza bene CC. In Linux, io uso geany ( http://www.geany.org/ ) o vim entrambi hanno CC, in quest'ultimo caso, è necessario configurarlo. Ho trovato Eclipse per essere troppo gonfio e mi sono ammalato di attesa che si startup. : \

Kimodo ha buon completamento del codice, rivelando non solo le funzioni di PHP, ma la roba che hai dichiarato nel contesto attuale. Inoltre, se hai documentato correttamente la funzione o qualunque, visualizza che la documentazione, come pure!

Non ho ancora visto nulla superiore al completamento automatico che era in Zend Studio 5.x. Ho provato le versioni successive, che sono costruiti su Eclipse, e ben potrebbe anche essere utilizzando Aptana ...

Purtroppo questo significa mantenere le finestre con il XP o 2000 sguardo dal momento che la GUI Java (quello Zend Studio è stato costruito su) viti fino a Win7 look, ma per le caratteristiche di Zend 5 ha, è valsa la pena.

Non solo si è auto completare funzioni note, sarà completamento automatico variabili / funzioni si fanno, e non solo per il file corrente, ma qualsiasi file aperto (e penso che qualsiasi nel progetto open), e si auto suggerire elementi di classe come bene.

Inoltre essendo in grado di eseguire locale all'interno Zend Studio per sé per testare parti di codice è grande. Se solo si lascia facilmente di salvare sia file system locale e caricare sul server, allo stesso tempo .... (ho appena lasciato un programma FTP in esecuzione in background che ogni 10 minuti scaricheranno eventuali modifiche al server).

vim.

http://weierophinney.net/matthew/archives /123-Vim-7-code-completion.html

Inoltre, guardando le domande simili raccomandati, ho notato che c'è già una buona domanda discutere i diversi modi di utilizzare il completamento del codice vim.

Word / completamento del codice in VIM

Si può provare Zend Studio.

http://www.aptana.org/

  

Codice Assist
  Aids in authoring di HTML, CSS, JavaScript, PHP e Ruby. Supporta le più recenti specifiche HTML5. include le informazioni   circa il livello di supporto per ogni elemento nei principali browser web

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top