我正在用PHP7编写命令行PHP脚本。
当我将shebang(#!/usr/bin/php
)放在文件顶部时,如果我使用declare(strict_types=1)
添加严格模式,则会出现以下错误:
PHP致命错误:strict_types声明必须是第3行index.php脚本中的第一个语句
我发现让严格类型工作的唯一方法是删除shebang行。
有没有办法同时使用shebang和严格类型,或者它是一个php bug?
答案 0 :(得分:2)
好的,这就是为什么严格的类型声明不起作用的原因:我在shebang和php开始标记之间有一个新的行。
工作示例:
#!/usr/bin/php
<?php
declare(strict_types=1);
// your code