Lezione 4 — Il tuo primo script PHP: Guida pratica e concettuale

Impara a scrivere e avviare il tuo primo script PHP. Scopriremo come funziona l'esecuzione lato server e come integrare PHP all'interno di una pagina HTML.

Benvenuti nella Lezione 4: Il tuo primo passo nel mondo PHP

Dopo aver configurato l'ambiente di sviluppo nelle lezioni precedenti, sei finalmente arrivato al momento più emozionante: scrivere il tuo primo codice PHP. Molti principianti vedono il codice come qualcosa di astratto, ma PHP è uno strumento estremamente concreto che permette di trasformare pagine web statiche in applicazioni dinamiche.

In questa lezione non ci limiteremo a scrivere un semplice "Ciao Mondo", ma analizzeremo perché PHP si comporta in un certo modo, come interagisce con il server e quale sia la differenza fondamentale tra il codice che gira sul tuo browser (come HTML o JavaScript) e quello che gira sul server.

Capire il concetto di Server-Side Rendering (SSR)

Prima di scrivere una singola riga di codice, dobbiamo chiarire un concetto fondamentale: PHP è un linguaggio server-side.

Cosa significa "lato server"?

Quando visiti una pagina HTML semplice, il tuo browser (Chrome, Firefox, Safari) scarica il file dal server e lo visualizza. In questo caso, il browser fa tutto il lavoro. Quando invece richiedi una pagina .php, accade qualcosa di diverso:

  1. Richiesta: Il browser chiede al server la pagina index.php.
  2. Elaborazione: Il server vede l'estensione .php e passa il file all'interprete PHP.
  3. Esecuzione: L'interprete PHP legge il codice, esegue i calcoli, interroga eventualmente un database e genera del semplice codice HTML.
  4. Risposta: Il server invia l'HTML finale al browser.

Il browser non vede mai il codice PHP originale; riceve solo il risultato della sua esecuzione. Questo è il motivo per cui PHP è ideale per gestire dati sensibili, password e connessioni a database: il codice logico rimane nascosto e sicuro sul server.

La sintassi di base e il primo script

Ogni script PHP deve essere racchiuso tra dei tag specifici. Questi tag dicono al server: "Attenzione, da qui in poi non leggere questo testo come HTML, ma interpretalo come codice PHP".

Il tag di apertura è <?php e quello di chiusura è ?>.

Esempio 1: Il classico Hello World

Creiamo un file chiamato hello.php nella cartella del tuo server locale (solitamente htdocs per XAMPP o www per WampServer). Inserisci il seguente codice:

<?php
  // Questo è un commento a riga singola
  // La funzione echo viene utilizzata per stampare testo a video
  echo "Ciao Mondo! Benvenuto nella lezione 4 di PHP.";
?>

Spiegazione del codice:

  • <?php: Apre la sezione PHP. Tutto ciò che segue verrà elaborato dal server.
  • echo: È l'istruzione più comune in PHP. Serve a "stampare" o inviare una stringa di testo verso il browser.
  • "...": Le virgolette definiscono una stringa di testo.
  • ;: Il punto e virgola è obbligatorio alla fine di ogni istruzione. Dimenticarlo è l'errore più comune per i principianti e causerà un Parse Error.
  • ?>: Chiude la sezione PHP.

Integrare PHP all'interno di HTML

Uno dei maggiori punti di forza di PHP è la sua capacità di essere "embedded" (incorporato) direttamente nell'HTML. Non devi creare file separati per la logica e per la struttura; puoi mescolarli per creare contenuti dinamici.

Immagina di voler creare una pagina che saluta l'utente e mostra la data odierna. Invece di scrivere la data a mano ogni giorno, lasciamo che PHP lo faccia per noi.

Esempio 2: Pagina HTML dinamica

<!DOCTYPE html>
<html lang="it">
<head>
    <meta charset="UTF-8">
    <title>La mia prima pagina dinamica</title>
    <style>
        body { font-family: sans-serif; line-height: 1.6; color: #333; padding: 20px; }
        .highlight { color: #007bff; font-weight: bold; }
    </style>
</head>
<body>

    <h1>Benvenuti nel mio sito!</h1>
    
    <p>Questo testo è scritto in HTML puro.</p>

    <p>Oggi è il: <span class="highlight">
        <?php 
            // Utilizziamo la funzione date() per ottenere la data attuale
            echo date("d/m/Y"); 
        ?>
    </span></p>

    <p>Questo messaggio è stato generato dinamicamente da PHP!</p>

</body>
</html>

Perché questo approccio è potente? In questo esempio, l'utente finale vedrà semplicemente Oggi è il: 24/05/2024 (o la data corrente). Se guardasse il "Sorgente della pagina" nel browser, non vedrebbe mai la funzione date(), ma solo il risultato finale. Questo ci permette di personalizzare l'esperienza utente in base a variabili, orari o dati provenienti da un database.

Approfondimento: Variabili e Concatenazione

Per rendere i nostri script davvero utili, non possiamo limitarci a stampare testi fissi. Abbiamo bisogno delle variabili. In PHP, una variabile è un contenitore che può ospitare diverse tipologie di dati (numeri, stringhe, array).

Le variabili in PHP iniziano sempre con il simbolo del dollaro $.

Esempio 3: Utilizzo di variabili e concatenazione

<?php
    // Definizione delle variabili
    $nomeUtente = "Mario";
    $eta = 25;
    $citta = "Roma";

    // Concatenazione di stringhe
    // In PHP si usa il punto (.) per unire due stringhe
    echo "Ciao " . $nomeUtente . ", hai " . $eta . " anni e vivi a " . $citta . ".";

    echo "<br>"; // Aggiungiamo un break HTML per andare a capo

    // Interpolazione di stringhe (metodo più rapido)
    // Se usiamo i doppi apici, PHP sostituisce automaticamente la variabile con il suo valore
    echo "Benvenuto $nomeUtente, sei di $citta!";
?>

Analisi tecnica:

  1. Dichiarazione: $nomeUtente = "Mario"; crea una variabile di tipo stringa.
  2. Concatenazione: L'operatore . è fondamentale. A differenza di JavaScript o Java dove si usa il +, PHP usa il punto per unire testi e variabili.
  3. Interpolazione: Quando inseriamo una variabile all'interno di stringhe delimitate da doppi apici ("), PHP esegue l'interpolazione. Se usassimo i singoli apici ('), PHP stamperebbe letteralmente $nomeUtente senza sostituirlo con il valore "Mario".

Esempi pratici: Casi d'uso reali

Ora che conosciamo la sintassi, vediamo come queste basi vengono applicate in scenari reali di sviluppo web.

1. Gestione del Copyright nel Footer

Invece di aggiornare manualmente l'anno nel footer di ogni pagina del tuo sito ogni 1° gennaio, puoi usare PHP: Copyright &copy; <?php echo date("Y"); ?> MioSito.it.

2. Messaggi di Benvenuto Personalizzati

Se un utente ha effettuato l'accesso, puoi mostrare il suo nome: <?php if($isLoggedIn) { echo "Ciao, " . $user->name; } else { echo "Effettua il login"; } ?>.

3. Generazione di Menu Dinamici

Invece di scrivere 10 link HTML a mano, puoi usare un array di pagine e un ciclo PHP per generare l'intera lista di navigazione in poche righe di codice.

Errori comuni e FAQ

Durante la scrittura del tuo primo script, potresti imbatterti in alcuni problemi classici. Ecco come risolverli:

Il codice PHP appare come testo nel browser

Causa: Stai probabilmente aprendo il file con un doppio clic (es. file:///C:/xampp/htdocs/hello.php) invece di passare attraverso il server locale. Soluzione: Apri il browser e digita http://localhost/hello.php.

Errore: Parse error: syntax error, unexpected '...'

Causa: Quasi certamente hai dimenticato un punto e virgola (;) alla fine di una riga o hai dimenticato di chiudere una virgoletta. Soluzione: Controlla l'ultima riga indicata dall'errore e quella immediatamente precedente.

Differenza tra echo e print?

Molti principianti chiedono quale usare. In termini di prestazioni, sono quasi identici. echo è leggermente più veloce e può accettare più parametri, mentre print restituisce sempre un valore (1), rendendolo utilizzabile in contesti di espressione. Nella pratica quotidiana, echo è lo standard.

Prossimi passi

Complimenti! Hai appena scritto e compreso il funzionamento del tuo primo script PHP. Hai imparato che PHP gira sul server, come integrarlo nell'HTML e come utilizzare le variabili per rendere i contenuti dinamici.

Per continuare il tuo percorso di apprendimento, ecco cosa ti suggeriamo di studiare nelle prossime lezioni:

  1. Tipi di Dati: Approfondisci la differenza tra Integer, Float, String e Boolean.
  2. Operatori Matematici: Impara a fare calcoli con PHP (somme, sottrazioni, moduli).
  3. Strutture di Controllo: Scopri come usare if, else e switch per creare logiche decisionali complesse.
  4. Cicli: Impara a usare for e while per automatizzare compiti ripetitivi.

Ricorda: la programmazione si impara scrivendo. Non limitarti a leggere questo articolo; apri il tuo editor di testo, sperimenta con le variabili e prova a rompere il codice per capire come risolvere gli errori!