- Le typage des paramètres des méthodes est partiellement possible en PHP 5.0
- Ce typage est limité à des noms de classe ou d'interface
- Exemple :
require_once("PieceQuarto.php");
class BoitePieceQuarto {
protected $pq;
public static $compteurVide = 0;
public function __construct(PieceQuarto
$pq = null) {
$this->pq = $pq;
}
- PHP 5.1 permet d'utiliser le type
array
- PHP 7 étend cette possibillité aux types simples (
bool, float, int, string
), au typage des valeurs de retours des méthodes et aux fonctions.
- Exemple :
public function getPieceDispo(int
$position) : PieceQuarto
{
return $this->piecesDispos[$position];
}
- PHP 7.1 accepte le type
void
et permet de préfixer les autres types de retour avec ?
afin d'accepter NULL
comme valeur de retour.
- PHP 7.2 accepte le type générique
object
.
- PHP 7.4 les propriétés de classe peuvent être typées, version disponible sur ust-infoserv et utilisée pour tester votre code !.
class User {
public int $id;
public string $name;
}