php脚本#!/usr/bin/env php写法的好处

Posted 一个人的孤独自白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php脚本#!/usr/bin/env php写法的好处相关的知识,希望对你有一定的参考价值。

脚本语言的第一行,目的就是指出,你想要你的这个文件中的代码用什么可执行程序去运行它。
比如php脚本的第一行可以写成如下几种格式
#!/usr/bin/php
#!/usr/bin/env php
#!/usr/bin/env -S -P/usr/local/bin:/usr/bin php
#!/usr/bin/env -S-P/usr/local/bin:/usr/bin:${PATH} php

#!/usr/bin/env php写法的好处
这种写法主要是为了让你的程序在不同的系统上都能适用。

不管你的php是在/usr/bin/php还是/usr/local/bin/php
#!/usr/bin/env php会自动的在你的用户PATH变量中所定义的目录中寻找php来执行的。

加上-P参数使用来指定一些目录去寻找php这个程序
#!/usr/bin/env -S -P/usr/local/bin:/usr/bin php的作用就是在/usr/local/bin和/usr/bin目录下寻找php。

为了让程序更加的有可扩展性,可以写成如下代码:
#!/usr/bin/env -S-P/usr/local/bin:/usr/bin:${PATH} php
#!/usr/bin/env -S-P/usr/local/bin:/usr/bin:${PATH} perl
(-S-P之间没有空格)
那么它除了在这两个目录寻找之外,还会在PATH变量中定义的目录中寻找。

#!/usr/bin/php写成 #!/usr/bin/env php会好些,当然更好的是#!/usr/bin/env -S-P/usr/local/bin:/usr/bin:${PATH} php
一般使用#!/usr/bin/env php这种写法就能兼容大部分服务器了。

同理,python脚本开头写法:

#!/usr/bin/env python














以上是关于php脚本#!/usr/bin/env php写法的好处的主要内容,如果未能解决你的问题,请参考以下文章

Composer 已安装,但得到 /usr/bin/env: php: No such file or directory

关于 yii2 cron运行 console的脚本不运行,可是手动运行成功的原因

#!/usr/bin/env 脚本解释程序的作用

PyCharm中脚本模板 #!/usr/bin/env python与#!/usr/bin/python

关于#!/usr/bin/env python 的用法

shell脚本开头#!/usr/bin/env bash,#!/usr/bin/bash,#!/bin/bash的比较