2009-12-08 19 views

risposta

12

Dai un'occhiata alla funzione get_defined_constants. Restituirà un array di tutte le costanti definite nel codice fino al punto della chiamata della funzione. È quindi possibile utilizzare print_r per stampare l'array.

+1

Ovviamente è nella libreria standard. D'oh! – MiseryIndex

+0

Una delle più belle funzionalità di PHP è che ha quasi tutto ciò di cui avrete bisogno. – MitMaro

+0

Da qui il grugnito annoiato. ;-) Ancora in attesa di vedere se qualcuno sa se Xdebug può visualizzare le costanti però. – MiseryIndex

3

probabilmente avrete bisogno di adattarsi:

$arr = get_defined_vars();

+0

Le variabili e le costanti sono due mondi diversi ... quindi, no, probabilmente non si vuole adattare get_defined_vars() – Spooky

1

Il migliore che ho trovato è quello di premere F7 (passo verso), mentre in modalità di debug per avere la vostra linea costante eseguito.

define('SOME_CONSTANT','VALUE'); 

E quindi fare doppio clic su "SOME_CONSTANT", fare clic destro e scegliere aggiungere nuovo orologio (scorciatoia: Shift + Ctrl + F7), e la nuova finestra di controllo apparirà con la costante precompilato aggiungere, selezionare entrare e si dovrebbe vedi il tuo valore costante nelle Variabili (se hai il diamante blu selezionato "Mostra gli orologi nella vista delle variabili") & Pannello della finestra degli orologi.

Anche molto utile sapere, è possibile passare il mouse sopra le variabili per vedere il loro valore anziché guardare nel pannello Debug> Variabili ... è sufficiente accenderlo poiché è disattivato per impostazione predefinita ... apparentemente buggato. ..utilizzando l'ultimo xdebug e per me è andata bene finora.

Strumenti> Opzioni> PHP> Scheda Generale> Sezione Debugging> Controllare Orologi e Balloon valutazione

Speriamo che questo sarà ancora utile 2 anni più tardi.

4

Questo tipo di pratica che utilizzo è abbastanza dignitoso in quanto mostra solo costanti create dall'utente/personalizzate.

Avvolgere questo all'interno di pre-tag o solo visualizzare la fonte e otterrete una matrice molto bella di tutte le cose che hai definito.

Si noti che questo non funzionerà con php 5.3. * Dove in 5.4. * Emette bene.

Nelle versioni precedenti di php, get_defined_constants() deve essere assegnato prima a una variabile, prima dell'output. Qualcosa di simile.

$gdc = get_defined_constants(true); 
print_r(var_export($gdc['user'], true)); 
+0

Soluzione piacevole per evitare di visualizzare tutto (Super Globali, ecc.). Evita ** altri elementi ... ** alla fine dell'inserzione – Sablefoste

Problemi correlati