In strict mode, only the variables exactly matching the declaration types are accepted. Strict type-checking mode can be enabled:
declare(strict_types=1) directive is specified.
The directive must be the first statement in a file, block mode is explicitly disallowed.
See Strict typing (php.net) for details.