命令行接口-在PHP7中同时使用shebang和strict类型声明


command line interface - use both shebang and strict type declaration in PHP 7

我正在用PHP7编写一个命令行PHP脚本。

当我把shebang(#!/usr/bin/php)放在文件顶部时,如果我用declare(strict_types=1)添加严格模式,我会得到以下错误:

PHP致命错误:strict_types声明必须是index.PHP中第3行脚本中的第一条语句

我发现让严格类型工作的唯一方法是删除shebang行。

有没有办法同时使用shebang和strict类型,或者这是一个php错误?

好的,这就是为什么严格类型声明不起作用的原因:我在shebang和php打开标记之间有一行新行。

工作示例:

#!/usr/bin/php
<?php
declare(strict_types=1);
// your code