0

是否有从命令行使用 php 的正确方法……或者更确切地说……一种方法比另一种更正确?

如果您创建一个文件,请使用以下代码说 test.php:

#!/usr/bin/php
<?php
print "This is a test".PHP_EOL;
print "This is another test!!";
?>

然后chmod +x text.php(使其在 linux 上可执行)。

然后可以通过以下方式运行..... ./test.phpphp test.php

我更喜欢只使用./test.php,但经常在示例中看到php test.php 。

以下是 shebang 行的正确语法 #!/usr/bin/php 还是更正确的 #!/usr/bin/php -q

我已经看到了这两种情况,并且看到 -q 标志是为了让 html 内容安静,但是想知道使用 cli 兼容性编译的 php 是否真的需要 -q 标志?
谢谢你的帮助 :)

4

2 回答 2

0

如果您为自己的目的编写小 php 脚本,那#!很好。

如果它们要在某种世界可见的盒子(例如网络服务器)上,那么我会说不太好 - 因为您已经使它们可执行,它们现在是一个安全风险。

我倾向于使用#!perl、sh(它们总是很少的私有的、非生产的东西)和php somefile.phpPHP(可能会或可能不会在服务器上结束)。

于 2012-04-18T01:57:36.533 回答
0
#!/usr/bin/php

在解释器脚本的第一行,“#!”是应该用来解释文件内容的程序的名称。例如,如果第一行包含

“#!/bin/sh”

, 然后文件的内容作为 shell 脚本执行。

在您的情况下,这意味着使用 /usr/bin 位置中的 php 文件执行脚本。

使用php test.php意味着您正在使用 php 运行 test.php,因此您不需要第一行。至于 ./test.php 您的文件需要是可执行文件并且需要第一行。

关于 -q 标志,请特别 查看

抢 2007 年 3 月 23 日 11:48

如果你看到 -q 会有更好的扩展。这是另一个

于 2012-04-18T02:02:47.200 回答