我正在尝试在我的网站上安装作曲家.
The Composer documentations建议运行此命令:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"`
但是当我这样做时,我收到一个错误:
Error in argument 1, char 2: option not found r
我使用的是PHP 7.0版
这里发生了什么?
最佳答案 我怀疑在你的情况下php是指PHP的CGI-SAPI二进制文件而不是它应该是的CLI.
As documented in the PHP manual,CGI-SAPI不包含-r选项:
Note:
-r is available in the CLI SAPI, but not in the CGI SAPI.
您可以通过使用-v标志检查“php”的版本来确认是这种情况.
正确的设置应该表明php是一个CLI interupter:
C:\Users\HPierce>php -v
PHP 7.0.8 (cli) (built: Jun 21 2016 15:27:20) ( ZTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
设置不当可能表明它是CGI SAPI:
C:\Users\HPierce>php-cgi -v
PHP 7.0.8 (cgi-fcgi) (built: Jun 21 2016 15:27:08)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
您可以通过使用绝对路径引用CLI二进制文件而不是使用操作系统的$PATH环境变量的php快捷方式来解决此问题:
C:\php\php.exe -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"