PHP 7.1 lub nowszy (wydany 2 grudnia 2016 r.)
Możesz jawnie zadeklarować zmienną, która ma mieć null
taką składnię
function foo(?Type $t) {
}
spowoduje to
$this->foo(new Type());
$this->foo(null);
$this->foo();
Tak więc, jeśli chcesz opcjonalnego argumentu, możesz postępować zgodnie z konwencją, Type $t = null
podczas gdy jeśli chcesz, aby argument akceptował oba null
i jego typ, możesz postępować zgodnie z powyższym przykładem.
Możesz przeczytać więcej tutaj .
PHP 7.0 lub starszy
Musisz dodać wartość domyślną, taką jak
function foo(Type $t = null) {
}
W ten sposób możesz przekazać mu wartość null.
Jest to udokumentowane w sekcji podręcznika dotyczącej deklaracji typu :
Deklaracja może akceptować NULL
wartości, jeśli domyślna wartość parametru jest ustawiona na NULL
.