命令行脚本php不运行

Adé*_*ine 13 php mysql cron lamp crontab

我正在尝试构建一个PHP脚本来手动处理数据,以便以后将其转换为cronjob.这个脚本也从mysql和第三方soap获取数据.当我尝试从命令行运行它时,我有一个错误,脚本不运行.

表明:

./test.php: line 1: ?php: No such file or directory
Enter a number:
./test.php: line 5: syntax error near unexpected token `('
./test.php: line 5: `$line = trim(fgets(STDIN));'
Run Code Online (Sandbox Code Playgroud)

这是我脚本中的内容:

 echo 'Enter a number:';
  $line = trim(fgets(STDIN));
  var_dump($line);
Run Code Online (Sandbox Code Playgroud)

我知道这个剧本有效,有什么不对?

Boo*_*eus 18

你得到这个错误是因为你执行这个脚本就像./script.php.为了确保PHP脚本能够理解并正确运行,您必须将其包含#!/usr/bin/php在脚本的顶部.

例:

#!/usr/bin/php
<?php
echo 'Enter a number:';
$line = trim(fgets(STDIN));
var_dump($line);
Run Code Online (Sandbox Code Playgroud)

如果PHP安装在/ usr/bin文件夹中,如果没有,则可以使用该locate php命令进行验证,然后使用正确的路径.

或者另一种选择

php /path/to/script.php