Lezione n.1 – Linguaggio PHP

In questa serie di lezioni, ti spiego i fondamenti del linguaggio PHP, uno dei linguaggi di programmazione per il web più utilizzato al mondo.
Vediamo subito gli argomenti di questa prima lezione,

Che cos’è il PHP ?


E’ un linguaggio di programmazione lato server, per la creazione di siti web dinamici e applicazioni web. Tutti i principali siti che oggi utilizziamo sono dinamici, in quanto il loro contenuto cambia in funzione dei dati che l’utente inserisce nel sito web specifico. Prima i siti web quando è nato Internet e il “World Wide Web” grazie al ricercatore del Cern di Ginvevra Tim Barnard Lee nel 1993-94, erano solo statici e scritti in HTML. A quei tempi, i siti web avevano lo scopo principale delle divulgazione delle informazioni. Oggi nell’epoca delle piattaforme web quali “Facebook”, “Youtube”, “Linkedin”, e dei servizi internet quali “E-banking”, “E-government”, “E-sanity”, “E-learning”, Blog ecc. i contenuti HTML cambiano in funzione dell’esperienza di navigazione e dell’interazione che l’utente svolge in questi siti.
Ho detto che è un linguaggio di programmazione lato server. Un linguaggio di programmazione è un linguaggio artificiale per scrivere programmi e farli eeguire ad un calcolatore dotato di una sintassi, di un lessico e di una semantica rigida, in questo senso il PHP è un lingaggio di programmazione che segue le stesse peculiarità di altri famosi linguaggio come il C/C++ e Java solo per citarne alcuni. E’ un linguaggio lato server poiché l’utente tramite un browser “applicazione client” richiama un file “php” su un sito web remoto ospitato di norma su un serve ove gira l’ambiente di esecuzione del PHP.

Caratteristiche del PHP

Ho già detto che PHP è un linguaggio di programmazione lato server. La sigla PHP è acronimo ricorsivo di “Preprocessor Hypertext Preprocessor”, ovvero è un linguaggio che produce un output e riceve input nei suoi programmi eseguibili che chiameremo “script” in linguaggio “HTML”. E’ un linguaggio interpretato ovvero l’ambiente di esecuzione compila ed esegue le istruzioni passo passo.
Inoltre è un linguaggio sia procedurale che orientato agli oggetti, più avanti nelle prossime lezioni vedrai entrambi gli approcci.
E’ giunto alla versione 8 anche se in uso conviene la versione 7.4 o 7.3

Come scrivere un programma PHP


Per scrivere un programma PHP è molto semplice basta conoscere la sintassi e avere un editor HTML o un semplice Blocco Note. Io ti consiglio alcuni Editor quali “Sublime Text”, “Atom”, “Bluefis”, ecc.
Il programma scritto in PHP può essere collocato in una normale pagina “HTML ” o in un file separato con estensione “php”.
In entrambi i casi il codice deve essere sempre racchiuso tra due tag come l’esempio che ti mostro:

<?php
  echo "Hello World !\n";
?>

Come vedi il codice è racchiuso tra i tag “<?php” e “?>”. L’istruzione che ho messo dentro i tag è la stampa di un messaggio con l’istruzione “echo” e con un carattere di “Escape” che è “\n” che dopo aver stampato la scritta esegue un a “capo riga”.
Tutto questo viene mostrato in una pagina HTML preparata dall’ambiente di esecuzione del “PHP”.

Sintassi base del linguaggio i dati

Non ti ho ancora spiegato come eseguire lo script sopra esposto. Per eseguire e testare il programma devi pubblicare il file su un server web tipo “Apache” e simili e sul web server deve girare l’interprete “PHP” che è appunto l’ambiene di esecuzione.
Per fare questo tante sono le possibilità, la più semplice è installare un ambiente di prova sul tuo calcolatore. Per fare questo potresti scaricare “XAMPP” dal sito web Apache Friends per il tuo sistema operativo.
Una volta fatta l’installazione che ti consiglio di seguire le istruzioni è abbastanza semplice, far partire il web server Apache da “XAMPP Control Panel”, cercare la cartella “radice” del web server, ad esempio in “Windows” se installi sul “disco locale C” troverai la cartella dentro il seguente percorso “C:\XAMPP\htdocs”. Una volta creato il file con il tuo Editor “HTML” salvalo nelle cartella che ti ho indicato.
Dopo avvia il Browser e nella barra degli indirizzi digita “http://localhost/nomefile.html” o “http://localhost/nomefile.php” a seconda se lo script è in una pagina HTML o in un file “php”. Se tutto è stato fatto correttamente il file dovrebbe essere eseguito dal web server e vedere una pagina web bianca con la sola scritta “Hello World”.
La sintassi PHP è molto simile a quella del C/C++ infatti ogni istruzione fatto salvo alcuni costrutti richiedo la terminazione delle istruzioni con il punto e virgola.
In PHP la dichiarazione delle variabili al contrario di altri linguaggi di programmazione avviene in modo implicito ovvero definendo la variabile e assegnandovi il valore è definito il tipo di dato che quella variabile rappresenta. L’unica vera differenza è che il nome della variabile deve iniziare con il simbolo del “$”. Alcuni esempio:

$a=3;
$raggio=3.14;
$parola="Hello"
$trovato=true;

La prima dichiarazione definisce una variabile $a intera, la seconda una variabile $raggio reale, la terza una variabile stringa $parola, e infine la quarta una variabile booleana $trovato.
In PHP è possibile definire le costanti mediante la sintassi “define” come ti illustro nell’esempio di codice.

define("pigreco",3.14);
define("articolo","il");
define("valore",3);

Ciascuna delle definizioni come si intuisce definisce una costante rispettivamente reale, stringa, intera.
In “PHP” sono disponibili le operazioni aritmetiche, le operazioni logiche e gli operatori di relazione per le condizioni come riportato nella seguente tabella riassuntiva.

SignificatoEsempio
somma di variabile a e b$a+$b;
differenza di variabile a e b$a-$b;
prodotto di variabile a e b$a*$b;
rapporto di variabile a e b$a/$b;
resto della divisione intera tra variabile a e b$a % $b;
and logico fra variabile a e b$a && $b;
or logico tra variabile a e b$a || $b;
negazione logica di variabile a!$aM
a maggiore di b, a maggiore uguale a b, a minore di b, a minore uguale di b, a identico a b,
a uguale a b, a diverso da b.
$a>$b
$a>=$b
$a<$b
$a<=$b
$a===$b
$a==$b
$a !=$b;

Gli operatori di relazione sono da utilizzare nelle istruzioni di selezione e nelle ripetizioni indefinite.

Primi costrutti del linguaggio

Il primo costrutto significativo è quello “if” ovvero la selezione binaria; l’esecuzione del programma è modificata in base da una condizione.
La struttura classica della selezione a due vie è pertanto:

if (condizione)
{ istruzione1;
  istruzione2;
  .....
}
else
{
   istruzione3;
   istruzione4;
   .....
}

Ad esempio 

<?php
$a=3;
$b=5;
if ($a<$b)
  echo "il più grande è b";
else
  echo "il più grande è a";

La sintassi “if” prevede le parentesi graffe, laddove sotto il “vero” e/o sotto il”falso” rappresentato dall’istruzione “else” sono presenti più istruzioni. L’esempio controlla se ll numero “a” e maggiore de numero “b”. In questo caso i dati sono assegnati dal programma, in quanto in “PHP” per inserire dati generici occorre utilizzare il codice “HTML” con i “Form” che vedremo nella prossima lezione.