半夜整理东西,发现一个以前没留意到的小问题。
function show($id) : int
{
return $id;
}
function show($id) : integer
{
return $id;
}
PHP 7.0+ 里支持了函数(和方法)的返回值类型提示,上述第二种写法在解释运行时会触发一个 Fatal Error,要求返回值必须是 integer 类的一个实例:
PHP Fatal error: Uncaught TypeError: Return value of show() must be an instance of integer, integer returned in /home/mingc/practice/demo68.php:12
当然,两者在强制类型转换时效果是一样的:
$a = '27c';
var_dump((int)$a); // int(27)
var_dump((integer)$a); // int(27)
相关链接