Changes

37 bytes removed ,  22:09, 23 December 2015
Aggiornato i collegamenti, apportato qualche correzione minore ed abilitato il syntax highlight
Line 2: Line 2:       −
Lingue: [http://www.giustetti.net/wiki/index.php?title=En/php_debug English] - '''Italiano'''
+
Lingue: [[en/php_debug | English]] - '''Italiano'''
    
----
 
----
Line 12: Line 12:       −
== Il linguaggio PHP ==
+
== Il Linguaggio PHP ==
    
PHP è un linguaggio per la scrittura di '''script''' particolarmente indicato per lo sviluppo di '''siti web dinamici'''. In quest'ultima configurazione PHP è '''eseguito sul server''' ove genera pagine HTML che sono poi inviate al browser. L'utente riceverà le pagine richieste senza avere alcun indizio della presenza di codice PHP sul server.
 
PHP è un linguaggio per la scrittura di '''script''' particolarmente indicato per lo sviluppo di '''siti web dinamici'''. In quest'ultima configurazione PHP è '''eseguito sul server''' ove genera pagine HTML che sono poi inviate al browser. L'utente riceverà le pagine richieste senza avere alcun indizio della presenza di codice PHP sul server.
Line 19: Line 19:       −
== Sviluppare codice PHP ==
+
== Sviluppare Codice PHP ==
    
Quale che sia la finalità per cui si fa ricorso a PHP, scrivere codice è un'operazione estremamente semplice che non richiede particolari strumenti o ambienti di sviluppo dedicati, ma solo:
 
Quale che sia la finalità per cui si fa ricorso a PHP, scrivere codice è un'operazione estremamente semplice che non richiede particolari strumenti o ambienti di sviluppo dedicati, ma solo:
Line 29: Line 29:       −
== L'analisi sintattica in PHP ==
+
== L'Analisi Sintattica in PHP ==
    
L'installazione base di PHP include alcuni strumenti utili per ricercare errori nel codice sorgente degli script. PHP consente di eseguire facilmente l''''analisi sintattica''' di qualsiasi script a cui si abbia accesso diretto. Si supponga di voler verificare la sintassi dello script hello_world.php sito nella directory /home/sviluppo/php/ sarà necessario avviare una '''shell''' o '''analogo emulatore di terminale''' e spostarsi in tale directory:
 
L'installazione base di PHP include alcuni strumenti utili per ricercare errori nel codice sorgente degli script. PHP consente di eseguire facilmente l''''analisi sintattica''' di qualsiasi script a cui si abbia accesso diretto. Si supponga di voler verificare la sintassi dello script hello_world.php sito nella directory /home/sviluppo/php/ sarà necessario avviare una '''shell''' o '''analogo emulatore di terminale''' e spostarsi in tale directory:
Line 53: Line 53:  
Di seguito sono riportati tre listati in codice PHP corrispondenti ai lanci eseguiti nelle righe precedenti. Il primo ed il secondo sono evidentemente afflitti da errori di sintassi anche banali. La differenza tra i due consiste nella correzione dell'errore a riga 2 ove è stata aggiunto un carattere ";" a chiudere la riga di codice. Il terzo listato contiene invece il codice corretto.
 
Di seguito sono riportati tre listati in codice PHP corrispondenti ai lanci eseguiti nelle righe precedenti. Il primo ed il secondo sono evidentemente afflitti da errori di sintassi anche banali. La differenza tra i due consiste nella correzione dell'errore a riga 2 ove è stata aggiunto un carattere ";" a chiudere la riga di codice. Il terzo listato contiene invece il codice corretto.
    +
<syntaxhighlight lang="php">
 
''hello_world.php - Listato 1'': Contiene numerosi errori banali di sintassi
 
''hello_world.php - Listato 1'': Contiene numerosi errori banali di sintassi
 
   <?php
 
   <?php
Line 60: Line 61:  
       echo '  </head>";
 
       echo '  </head>";
 
       echo'  <body>';
 
       echo'  <body>';
       echo '    <nowiki><p>Hello World</p></nowiki>'; ?>
+
       echo '    <p>Hello World</p>'; ?>
 
       echo '</body>";
 
       echo '</body>";
 
       echo '</html>';
 
       echo '</html>';
 
   ?>
 
   ?>
 +
</syntaxhighlight>
 
''hello_world.php - Listato 2'': Il primo errore segnalato dall'interprete &egrave; stato corretto.
 
''hello_world.php - Listato 2'': Il primo errore segnalato dall'interprete &egrave; stato corretto.
 +
<syntaxhighlight lang="php">
 
   <?php
 
   <?php
 
       echo '<html>';
 
       echo '<html>';
Line 71: Line 74:  
       echo '  </head>";
 
       echo '  </head>";
 
       echo'  <body>';
 
       echo'  <body>';
       echo '    <nowiki><p>Hello World</p></nowiki>'; ?>
+
       echo '    <p>Hello World</p>'; ?>
 
       echo '</body>";
 
       echo '</body>";
 
       echo '</html>';
 
       echo '</html>';
 
   ?>
 
   ?>
 +
</syntaxhighlight>
 
''hello_world.php - Listato 3'': Script sintatticamente corretto.
 
''hello_world.php - Listato 3'': Script sintatticamente corretto.
 +
<syntaxhighlight lang="php">
 
   <?php
 
   <?php
 
       echo "<html>\n";
 
       echo "<html>\n";
Line 82: Line 87:  
       echo "  </head>\n";
 
       echo "  </head>\n";
 
       echo "  <body>\n";
 
       echo "  <body>\n";
       echo "      <nowiki><p>Hello World</p></nowiki>'; ?>
+
       echo "      <p>Hello World</p>";
 
       echo "  </body>\n";
 
       echo "  </body>\n";
 
       echo "</html>\n";
 
       echo "</html>\n";
 
   ?>
 
   ?>
 +
</syntaxhighlight>
      −
== Visualizzare variabili in PHP ==
+
== Visualizzare Variabili in PHP ==
    
L'analisi della sintassi &egrave; utile come primo strumento per trovare errori, ma si tratta comunque di dimenticanze e sviste in fase di scrittura del codice. Gli errori di sintassi sono relativamente semplici da individuare e correggere. Decisamente pi&ugrave; complicati da identificare e correggere sono gli '''errori di logica''' che si presentano durante l'esecuzione del codice. Per individuare tali errori &egrave; necessario seguire il flusso del codice, determinare quali file siano eseguiti e con che ordine e infine ottenere un elenco delle variabili ed il loro contenuto. In questo caso PHP offre un insieme decisamente limitato di strumenti: Le '''funzioni di backtrace e dump'''.
 
L'analisi della sintassi &egrave; utile come primo strumento per trovare errori, ma si tratta comunque di dimenticanze e sviste in fase di scrittura del codice. Gli errori di sintassi sono relativamente semplici da individuare e correggere. Decisamente pi&ugrave; complicati da identificare e correggere sono gli '''errori di logica''' che si presentano durante l'esecuzione del codice. Per individuare tali errori &egrave; necessario seguire il flusso del codice, determinare quali file siano eseguiti e con che ordine e infine ottenere un elenco delle variabili ed il loro contenuto. In questo caso PHP offre un insieme decisamente limitato di strumenti: Le '''funzioni di backtrace e dump'''.
Line 123: Line 129:  
# Ripetere quanto ai punti precedenti fino a che non sia individuato e corretto un errore.
 
# Ripetere quanto ai punti precedenti fino a che non sia individuato e corretto un errore.
 
# Rimuovere tutto il codice aggiunto e ripristinare il corretto flusso dello stesso.
 
# Rimuovere tutto il codice aggiunto e ripristinare il corretto flusso dello stesso.
La procedura esposta risulta essere molto macchinosa ed onerosa in termini di tempo e lavoro. Sarebbe sicuramente cosa gradita poter '''seguire il flusso del codice eseguito dall'interprete senza essere obbligati a modificarlo'''. Impossibile a meno di non installare e configurare alcuni strumenti addizionali. Molti degli strumenti esistenti e liberamente scaricabili si basano su xdebug, software che sar&agrave; oggetto di un futuro articolo in cui si descriver&agrave; la procedura di installazione e configurazione e le integrazioni con altri strumenti di sviluppo.
+
La procedura esposta risulta essere molto macchinosa ed onerosa in termini di tempo e lavoro. Sarebbe sicuramente cosa gradita poter '''seguire il flusso del codice eseguito dall'interprete senza essere obbligati a modificarlo'''. Impossibile a meno di non installare e configurare alcuni strumenti addizionali. Molti degli strumenti esistenti e liberamente scaricabili si basano su [[xdebug|xdebug]], software che sar&agrave; oggetto di un futuro articolo in cui si descriver&agrave; la procedura di installazione e configurazione e le integrazioni con altri strumenti di sviluppo.
      Line 138: Line 144:  
----
 
----
   −
Lingue: [http://www.giustetti.net/wiki/index.php?title=En/php_debug English] - '''Italiano'''
+
Lingue: [[en/php_debug | English]] - '''Italiano'''