PHP: Metodi statici e costruttori
Metodi statici e costruttori in PHP
In PHP i metodi statici appartengono alla classe stessa e non a una sua istanza, mentre i costruttori sono metodi speciali che inizializzano automaticamente un oggetto al momento della creazione.
Introduzione
I metodi statici permettono di richiamare funzioni direttamente dalla classe senza creare un oggetto, mentre i costruttori servono a inizializzare le proprietà di un oggetto in modo automatico e ordinato. Entrambi sono strumenti fondamentali per strutturare al meglio il codice in stile orientato agli oggetti.
Esempio di metodo statico
Un metodo statico si definisce con la parola chiave static
e si richiama usando l’operatore di risoluzione di ambito ::
.
Codice Esempio: metodo statico

<?php
class Matematica {
public static function quadrato($numero) {
return $numero * $numero;
}
}
echo Matematica::quadrato(5);
?>
<!-- Output:
25
-->
Esempio di costruttore
Il costruttore è un metodo speciale chiamato automaticamente quando si crea un nuovo oggetto. In PHP si definisce con il nome __construct()
.
Codice Esempio: costruttore

<?php
class Persona {
public $nome;
public $eta;
public function __construct($nome, $eta) {
$this->nome = $nome;
$this->eta = $eta;
}
public function presenta() {
return "Mi chiamo " . $this->nome . " e ho " . $this->eta . " anni.";
}
}
$persona = new Persona("Giulia", 28);
echo $persona->presenta();
?>
<!-- Output:
Mi chiamo Giulia e ho 28 anni.
-->
Tabella riassuntiva
Concetto | Descrizione | Quando usarlo |
---|---|---|
Metodo statico | Appartiene alla classe e non a un’istanza. Richiamabile con Classe::metodo() . |
Operazioni generiche, funzioni di utilità, calcoli matematici. |
Costruttore | Metodo speciale che inizializza un oggetto al momento della creazione. | Quando servono proprietà pronte e consistenti in ogni oggetto. |
Considerazioni
Metodi statici e costruttori sono strumenti diversi ma complementari. I primi evitano la creazione di oggetti quando non serve, i secondi garantiscono che ogni oggetto parta con uno stato iniziale definito. Usarli correttamente semplifica il codice e lo rende più chiaro e robusto.