在PHP 7中,一种新的方式来设置模式是否进行严格模式。
coercive -强制是默认模式,无需指定。
strict -严格模式必须明确暗示。
可使用上述模式强制执行以下功能参数类型–
int
float
bool
string
interfaces
array
callable
<?php // Coercive mode function sum(int ...$ints) { return array_sum($ints); } print(sum(2, '3', 4.1)); ?>
它产生以下浏览器输出–
9
<?php // Strict mode declare(strict_types=1); function sum(int ...$ints) { return array_sum($ints); } print(sum(2, '3', 4.1)); ?>
它产生以下浏览器输出–
Fatal error: Uncaught TypeError: Argument 2 passed to sum() must be of the type integer, string given, ...