Programmazione con Yii2 utilizzo del debugger

Cosa starai creando

Se stai chiedendo "Cos'è Yii?" check-out Introduzione al framework Yii, che rivede i vantaggi di Yii e include una panoramica di Yii 2.0.

introduzione

Nella serie Programming with Yii2, guido i lettori nell'uso di Yii2 Framework per PHP. 

Nel tutorial di oggi, ti mostrerò come installare Yii2 Debugger e ne esamineremo le funzionalità in dettaglio. È un potente assistente di programmazione che è spesso sottoutilizzato.

Durante la codifica e il test dell'applicazione, il debugger può mostrare il percorso dell'applicazione, le query e le variabili di query, le caratteristiche delle prestazioni, le impostazioni del server e del framework e molto altro. Per favore seguimi con me per un tour esteso.

Prima di iniziare, ricorda, cerco di partecipare alle discussioni di seguito. Se hai una domanda o un suggerimento sull'argomento, per favore pubblica un commento qui sotto o contattami su Twitter @reifman. 

Se hai notato il divario tra gli episodi della serie di programmazione Yii, è perché dovevo averlo chirurgia cerebrale l'anno scorso. Grazie per la vostra pazienza e supporto: è bello scrivere di nuovo regolarmente, e non vedo l'ora di continuare la copertura di Yii2.

Iniziare

Installazione del debugger

Innanzitutto, devi aggiungere il yiisoft / yii2-debug libreria a composer.json o installarlo manualmente come segue:

$ compositore richiede yiisoft / yii2-debug $ compositore di aggiornamento

Ci sono un paio di modi per configurare il debugger nella tua applicazione. Il modo più comune è di farlo nella configurazione main.php dell'applicazione:

return ['bootstrap' => ['debug'], 'modules' => ['debug' => ['class' => 'yii \ debug \ Module',], // ... 

In alternativa, puoi configurare a livello di programmazione il debugger per una modalità specifica come ho fatto di seguito:

// ... if (! YII_ENV_TEST) // aggiustamenti di configurazione per l'ambiente 'dev' $ config ['bootstrap'] [] = 'debug'; $ config ['modules'] ['debug'] = ['class' => 'yii \ debug \ Module', 'allowedIPs' => ['*'],]; // ... 

La suddetta configurazione disabilita il debugger durante il test di accettazione.

Accesso al debugger

Inizialmente, il debugger verrà visualizzato nella parte inferiore della schermata dell'applicazione:

Tuttavia, facendo clic sul segno meno che all'estremità destra, puoi ridurre a icona la barra degli strumenti come mostrato di seguito:

Puoi accedere al debugger in qualsiasi momento facendo clic su di esso o visitando l'URL di debug come mostrato:

http: // localhost: 8888 / yourapp / index.php / debug / default / index

La console di debug

La console di debug iniziale mostrerà la barra degli strumenti nella parte superiore dello schermo e quindi un elenco, decrescente nel tempo, di tutti i percorsi eseguiti dall'applicazione per URL:

Cliccando sul Etichetta elementi sopra, puoi accedere a informazioni di debug più dettagliate per qualsiasi richiesta di pagina, anche se è da 10 minuti o un'ora fa.

La barra degli strumenti

Puoi anche fare clic su elementi specifici della barra degli strumenti, come Tempo DB per passare direttamente al display della console per le query sulle prestazioni o sul database per la pagina di esecuzione corrente: 

Ogni elemento della barra degli strumenti corrisponde approssimativamente a uno dei pannelli di debug disponibili:

Il pannello delle richieste

La pagina di richiesta mostra tutte le variabili associate a un URL specifico, dalle variabili di query ai cookie:

Da questi pannelli della console, puoi sempre fare clic TuttiPiù recente, o Ultimo 10 per navigare verso altre richieste URL (avanti o indietro):

Il pannello di configurazione

Il Configurazione pannello mostra i dettagli sulla struttura attualmente installata, il numero di versione, le estensioni e informazioni simili per PHP:

Infatti, se continui a scorrere verso il basso, il Configurazione il pannello è (quasi eccessivamente) esteso, persino avventurandosi in crediti per il team di sviluppatori PHP:

Il pannello dei registri

Estremamente utile, Registra messaggi mostra la traccia di esecuzione della tua attuale pagina dell'applicazione:

È particolarmente utile per la navigazione del codice per trovare problemi con il codice e il debug delle query del database:

Il pannello dei profili delle prestazioni

La visualizzazione predefinita di Profilo delle prestazioni pannello mostra la durata di ciascun elemento della richiesta di pagina, ad es. Durata:

Puoi ordinare per Durata e scopri gli elementi più lenti della tua pagina:

Il pannello Query database

Il Query di database pannello mostra un sacco di quanto sopra filtrato dall'attività del database:

Il pannello Gruppi di beni

Sopra Pacchetti di beni, ti mostrerà tutti i componenti che Yii sta usando sulla tua pagina, come CSS e JavaScript e quali file di risorse sono caricati da:

Il pannello Messaggi di posta elettronica

Sopra Messaggi e-mail, se la pagina che stai visualizzando ha inviato un messaggio utilizzando SwiftMailer di Yii, potrai vedere le intestazioni e le impostazioni sul campo su questo pannello:

Nel complesso, il debugger Yii2 offre una visione abbastanza ampia e dettagliata di ciò che accade nel framework e nella tua applicazione.

In chiusura

Spero ti sia piaciuto esplorare la console di debug di Yii con me e che sia stato produttivo per te.

Siamo arrivati ​​molto lontano nella serie Yii2 e, soprattutto a questo punto, mi piacerebbe sapere quali caratteristiche e richieste di argomenti ti sarebbero state di grande aiuto. Puoi postarli nei commenti qui sotto o mandarmi una e-mail sul mio sito Web di Lookahead Consulting.

Se vuoi sapere quando arriverà il prossimo tutorial di Yii2, seguimi @reifman su Twitter o controlla la mia pagina di istruttore. La mia pagina di istruttore includerà tutti gli articoli di questa serie non appena saranno pubblicati.

Per esplorare un'applicazione Yii2 più avanzata ora, controlla le nostre serie di avvio e Meeting Planner. L'applicazione è ora in versione alpha e puoi pianificare riunioni con gli amici. Puoi anche scaricare il codice: è open source.

Link correlati

  • Yii2 Debug Extension (GitHub)
  • Costruire la tua startup con PHP (Envato Tuts + Code)
  • Yii2 Developer Exchange