使用#!/bin/php 有啥好处? [复制]

Posted

技术标签:

【中文标题】使用#!/bin/php 有啥好处? [复制]【英文标题】:What is the advantage of using #!/bin/php? [duplicate]使用#!/bin/php 有什么好处? [复制] 【发布时间】:2019-08-22 09:07:40 【问题描述】:

到目前为止,我在 cron 中使用简单的一行:php somefile.php

现在我发现有一个 sha-bang: #!/bin/php 添加到 php 文件的第一行,据我了解,这是对 cron 中文件名前面的 php 的一种替换,对吧?

在我的 cron 执行的 php 脚本中加入这一行有什么好处?

【问题讨论】:

它被称为shebang documentation上有解释 【参考方案1】:

使用 shebang 而不是显式调用解释器的主要优点是,您不必记住对任何给定脚本使用哪个解释器(如果您使用没有文件扩展名的漂亮文件名,这本身就更有用是传统的 UNIX 可执行文件)。

由于 cronjobs 是硬编码的,因此在您的特定情况下没有太多好处。它可以让您用不同的语言重写脚本,而无需编辑 cronjob 本身。

【讨论】:

【参考方案2】:

shebang 用于让 Linux 知道使用的是什么解释器。因此,当您使用chmod +x file 使该脚本成为可执行文件并直接使用./file 执行该脚本时,Linux 就知道如何执行它。

当使用php file.php 执行脚本时,linux 会尝试在PATH 中搜索二进制文件。

【讨论】:

以上是关于使用#!/bin/php 有啥好处? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

使用 Gunicorn + Nginx + Flask 有啥好处? [复制]

在变量声明中使用 var 有啥好处? [复制]

如何在 cpp 的线程中使用 = 运算符,它有啥好处? [复制]

将引用传递给对象有啥好处? [复制]

在 Weblogic 中复制连接池有啥好处吗?

工厂模式有啥好处? [复制]