Scalar TypeHints are available as of PHP 7:
Scalar type declarations come in two flavours: coercive (default) and strict. The following types for parameters can now be enforced (either coercively or strictly): strings (string), integers (int), floating-point numbers (float), and booleans (bool). They augment the other types introduced in PHP 5: class names, interfaces, array and callable.
PHP7之前没有标量的类型提示。 PHP 5.3.99 did have scalar typehints,但如果他们留下来,那么他们还没有最后确定,那么他们将如何工作。
然而,在PHP7之前,还有一些强制执行标量参数的选项。
有几个is_ *函数让你这样做,例如
要提出警告,你会使用
使用$ errorType的E_USER_WARNING。
例
function setInteger($integer)
{
if (FALSE === is_int($integer)) {
trigger_error('setInteger expected Argument 1 to be Integer', E_USER_WARNING);
}
// do something with $integer
}
替代
如果您想拼命使用标量类型提示,请查看
这显示了一种通过自定义错误处理程序强制执行标量类型提示的技术。