Gre*_*reg 2 php linux command-line
这一直困扰着我.
我知道你能做到
php foo.php
Run Code Online (Sandbox Code Playgroud)
要么
php -f foo.php
Run Code Online (Sandbox Code Playgroud)
有没有办法只启动执行位设置的脚本
./foo.php
Run Code Online (Sandbox Code Playgroud)
鉴于以下内容:
#!/usr/bin/php
<?php
exit('hello');
Run Code Online (Sandbox Code Playgroud)
我得到"无法打开输入文件"或"错误的解释器:没有这样的文件或目录"取决于"bin/php"之后是否有空格.
而不是#!/usr/bin/php,使用#!/usr/bin/env php是一个更好的解决方案.这将在PATH环境变量中查找PHP二进制文件.这是很多更强大的跨平台和.例如BSD安装PHP /usr/local/bin/php.
此外,您需要确保这是第一行,并且脚本具有可执行位设置,为每个人设置它(通常可以)使用:chmod a+x script.php
还要确保已启用CLI SAPI.运行php -v顶部验证,它应该显示如下:
[~]% php -v
PHP 5.3.3 (cli) (built: Jul 22 2010 16:21:30)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
Run Code Online (Sandbox Code Playgroud)