Variabili, costanti e tipi di dato in PHP


Spiegazione del Codice PHP

Questo codice PHP mostra diversi concetti fondamentali del linguaggio. Analizziamo ogni sezione:

Assegnazione di Variabili

$a = 10;
$b = $a;
$b = 20;

In questa parte vediamo come funziona l'assegnazione delle variabili:

  • $a riceve il valore 10
  • $b riceve il valore di $a (quindi 10)
  • $b viene poi modificata a 20
  • Importante: $a rimane 10 perché in PHP l'assegnazione crea una copia del valore

Output con echo

echo "La variabile a vale ".$a."<br/>";
echo "La variabile b vale ".$b."<br/>";

Il comando echo serve per stampare testo. Qui vediamo:

  • La concatenazione con il punto (.) per unire stringhe e variabili
  • L'uso di <br/> per andare a capo nell'HTML

Interpolazione di Stringhe

$materia = "INFORMATICA";
echo "La mia materia preferita è: $materia <br/>";
echo 'La mia materia preferita è: $materia';

Differenza importante tra virgolette:

  • Virgolette doppie ("): interpretano le variabili (sostituiscono $materia con il suo valore)
  • Virgolette singole ('): non interpretano le variabili (stampano letteralmente $materia)

Controllo dell'Esistenza di Variabili

$varTest = "Test";
$risultato = isset($varTest);
echo "Il risultato della varibile è: $risultato";

La funzione isset() controlla se una variabile esiste e non è null:

  • Restituisce true (1) se la variabile esiste
  • Restituisce false (vuoto) se non esiste

Costanti

define('APP_VERSION', "v.1.5.43");
const DEFAULT_LANG = "IT";

Le costanti sono valori che non possono essere modificati:

  • define(): può essere usata ovunque nel codice
  • const: deve essere usata a livello globale (non dentro if, funzioni, ecc.)

Costanti Predefinite

echo PHP_VERSION; // versione di PHP
echo PHP_OS;      // sistema operativo
echo __LINE__;    // numero di riga corrente
echo __FILE__;    // percorso del file corrente

PHP fornisce molte costanti predefinite utili per ottenere informazioni sul sistema.

Tipi di Dati

$prova = "Stringa";           // string
$prov = 12;                   // integer
$pro = false;                 // boolean
$pr = ["Latte", "Pane", "Pasta", "Pizza"]; // array
$p = null;                    // null

PHP supporta diversi tipi di dati e determina automaticamente il tipo in base al valore assegnato.

Caratteri di Escape

echo "Lorem ipsum dolor l'altro giorno \"Giovanni\" <br/>";
echo 'L\'altro giorno "giovanni"';

Per includere virgolette nel testo:

  • Nelle stringhe con ": usare \" per le virgolette doppie
  • Nelle stringhe con ': usare \' per gli apostrofi

Heredoc (Testo Multi-linea)

$testoLungo=<<<PAPERINO
Ciao questo è un testo multi-line
Posso andare giù quanto voglio $prov
mi fermo quando dico io :)
PAPERINO;

La sintassi Heredoc (<<<ETICHETTA) permette di scrivere testi su più righe e interpreta le variabili come le virgolette doppie.

Operatori di Confronto

$r = 55 <> '55';

L'operatore <> è equivalente a != (diverso da). In questo caso:

  • Confronta il numero 55 con la stringa '55'
  • In PHP, questi sono considerati uguali (conversione automatica)
  • Quindi il risultato è false (vuoto quando stampato)

Questo codice è un ottimo esempio per comprendere i concetti base di PHP: variabili, tipi di dati, output e operatori!


<?php
    $a = 10;
    $b = $a;
    $b = 20;

    echo "La variabile a vale ".$a."<br/>";
    echo "La variabile b vale ".$b."<br/>";

    $materia = "INFORMATICA";

    echo "La mia materia preferita è: $materia <br/>";
    echo 'La mia materia preferita è: $materia';

    $c = 10; //
    $d = $c; //
    $d = 20;

    $varTest = "Test";

    $risultato = isset($varTest);
    echo "Il risultato della varibile è: $risultato";

    define('APP_VERSION', "v.1.5.43"); // definizione di una costante
    echo APP_VERSION;

    const DEFAULT_LANG = "IT";

    //if($c > 5){
        //...
        //const PRICE = 20;
    //}
    echo "<br/><br/><br/>";
    echo PHP_VERSION; // fornisce la versione di PHP
    echo PHP_OS; // mi dice il sistema operativo
    echo "<br/>";
    echo __LINE__."<br/>";
    echo __FILE__;

    $prova = "Stringa";
    $prov = 12;
    $pro = false;
    $pr = ["Latte", "Pane", "Pasta", "Pizza"]; // array
    $p = null; // valore nullo

    echo "il valore false è: $pro";

    echo "Lorem ipsum dolor l'altro giorno \"Giovanni\" <br/>";
    echo 'L\'altro giorno "giovanni"';

    $testoLungo=<<<PAPERINO
    Ciao questo è un testo multi-line
    Posso andare giù quanto voglio $prov
    mi fermo quando dico io :)
    PAPERINO;

    echo $testoLungo;
    $r = 55 <> '55';
    echo "Operazione di prova: $r";
?>