php - Composer 在参数 1 中安装错误,char 2 : option not found r

标签 php composer-php

我正在尝试在我的网站上安装 Composer。 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 <b>(cli)</b> (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 <b>(cgi-fcgi)</b> (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

您可以通过使用绝对路径而不是利用操作系统的 $PATH 环境变量的 php 快捷方式来引用 CLI 二进制文件来解决此问题:

C:\php\php.exe -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

关于php - Composer 在参数 1 中安装错误,char 2 : option not found r,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41491697/

相关文章:

php - Composer - 使用两个不同版本的 Guzzle

php - Composer .lock : how does it work?

php - 产品变体的数据库结构

php - 将 clistview 中的第一个结果页面替换为静态页面

javascript - Yii - 在表单提交之前检索下拉值。

php - 如何使用 PHP Composer 定义私有(private)类路径?

php - 如何创建 Magento-2 扩展包以上传到 Magento-2 官方网站?

php - 你什么时候使用 "require-dev"?什么是常见的开发依赖项?

PHP UTF 编码的 URL 字符串

PHP - 当我们在页面上发布用户输入信息时应该调用哪些函数?