PHP

PHP (acronimo ricorsivo per Hypertext Preprocessor) è uno dei linguaggi di programmazione lato server più famosi e utilizzati al mondo. Nasce nel 1994 e oggi alimenta oltre il 70% dei siti web esistenti.

PHP viene eseguito interamente sul server.
Il server elabora il codice PHP e restituisce al browser dell'utente solo semplice codice HTML, CSS

Caratteristiche

Open Source ed Economico: È completamente gratuito e supportato da una community enorme. Qualsiasi servizio di hosting, anche il più economico, supporta PHP nativamente

Integrazione Nativa con i Database: Dialoga perfettamente con quasi tutti i database esistenti, in particolare con MySQL e MariaDB

Flessibile: Può essere integrato direttamente all'interno delle pagine HTML usando i tag:

<?php
            //qui ci va il codice
?>

Come funziona

  • Richiesta: L'utente digita un URL o invia un modulo (ad esempio tramite un metodo POST).
  • Elaborazione: Il server web (es. Apache o Nginx) intercetta la richiesta, legge il file .php e lo fa elaborare al motore PHP.
  • Database: Se necessario, PHP interroga il database per recuperare o salvare dati
  • Risposta: PHP genera una pagina HTML dinamica "al volo" e la spedisce al browser dell'utente.

Sintassi

Tag di apertura e chiusura: Tutto il codice deve essere racchiuso tra <?php ?> Ciò che sta fuori viene ignorato da PHP e trattato come semplice testo o HTML.

Variabili: Iniziano sempre con il simbolo del dollaro ($) e contengono i dati (es. $voto = 30;).
Tipi di dati: PHP gestisce stringhe (testo), numeri interi, numeri decimali, booleani (true/false), array (liste di dati) e oggetti.

Funzioni e Costrutti: Comandi nativi per controllare il flusso del programma (come if/else, i cicli foreach, e funzioni).

Variabili Superglobali

$_POST      $_GET     $_SERVER     $_SESSION     $_COOKIE
In PHP, queste cinque voci prendono il nome di Superglobali.
Sono array associativi integrati nel linguaggio, sempre disponibili in qualsiasi punto del codice (dentro funzioni, classi o file esterni.

$_POST Raccoglie i dati inviati al server tramite il corpo di una richiesta HTTP, quindi non visibili nell'URL.

$_GET Raccoglie i dati inviati al server tramite i parametri visibili nell'indirizzo web (la query string, dopo il punto di domanda ?).

$_SERVER Contiene dati generati dal server web. Include informazioni sugli header della richiesta, i percorsi degli script, gli indirizzi IP e il tipo di browser dell'utente.

$_SESSION Memorizza dati relativi a un singolo utente e li mantiene attivi mentre naviga tra le diverse pagine del sito. I dati sono salvati al sicuro sul server e associati all'utente tramite un ID univoco temporaneo. Prima di usarla, richiede sempre il comando session_start().

$_COOKIE Raccoglie i dati memorizzati direttamente nel computer dell'utente (all'interno del suo browser). A differenza delle sessioni, i cookie rimangono salvati anche se l'utente chiude il browser o spegne il computer, fino alla loro data di scadenza.

Alcuni Elementi fondamentali di PHP

if()
È il costrutto fondamentale per la logica del programma. Permette di eseguire un blocco di codice solo se una determinata condizione è vera.

foreach()
È un ciclo speciale progettato esclusivamente per scorrere gli elementi all'interno di un array (una lista di dati)

isset()
È una funzione nativa che controlla se una variabile è stata creata (definita) e se il suo valore non è null. Restituisce vero (true) o falso (false).

echo
Non è una vera funzione, ma un costrutto del linguaggio. Viene utilizzato per inviare testo, numeri o codice HTML direttamente alla pagina web del browser.

print_r()
È una funzione nativa utilizzata principalmente dagli sviluppatori durante la scrittura del codice (fase di debug) per ispezionare il contenuto di variabili complesse.

array('chiave'=>'valore') o array('valore','valore','valore')
E' una struttura dati fondamentale in PHP che permette di memorizzare più valori all'interno di una singola variabile. In PHP, gli array sono estremamente flessibili: possono contenere numeri, stringhe, booleani o persino altri array, e non hanno una dimensione fissa (possono crescere o rimpicciolirsi dinamicamente).

switch(variabile) case: condizione; break; default: break
È l'alternativa ideale a una lunga catena di if, elseif ed else.
tre componenti:
case: Definisce il valore da confrontare. Se la variabile passata allo switch corrisponde al valore del case, il codice sotto di esso viene eseguito. break: È fondamentale. Dice a PHP di uscire dallo switch una volta eseguito il codice del case corretto. Se lo dimentichi, PHP continuerà a eseguire il codice dei case successivi, anche se non corrispondono (comportamento di fall-through). default: È opzionale. Viene eseguito solo se nessuno dei case precedenti corrisponde alla variabile (funziona esattamente come l'ultimo else).