【发布时间】:2023-03-17 12:38:01
【问题描述】:
我目前正在用小代码练习 PHP7。我正在使用这段代码来练习标量类型声明:
declare(strict_types=1);
function div(float $x, float $y)
{
return $x / $y;
}
function sub(int $x, int $y)
{
return $x - $y;
}
var_dump(div(2, 3.5)); // float(7)
var_dump(sub('2', 3)); // Fatal error: Uncaught TypeError: Argument 1 passed to sub() must be of the type integer, string given..
但是当我运行这段代码时,我的服务器给出了 500 错误。但是当我删除 declare() 时它可以工作。我的服务器正在运行 PHP7。
【问题讨论】:
-
'2' is string .. 错误很明显.. Strict type 正在验证类型:int - 2 和 string - '2'
-
我的服务器没有运行这个脚本并给出 500 服务器错误
-
这是您的服务器配置..检查显示错误以及如何启用它们..
-
如何在 PHP7 中启用它们?
-
谢谢我找到了方法:)
标签: php return-type declare