0

我正在尝试通过作曲家安装库https://github.com/thephpleague/csv但出现以下错误,即

'这个包需要 php >= 5.5.9 但你的 php 版本 <5.4.45> 不满足这个要求。

我当前的 PHP 版本是 5.6.30,但由于某种原因,作曲家显示 <5.4.45> 这很奇怪。

我在 WINDOWS 上使用 ACQUIA DEV DESKTOP,可以轻松地在 PHP 版本之间切换,并且可以通过 a) dpm(phpinfo()); 检查 PHP 版本。或 b) 显示与 ACQUIA DEV DESKTOP 中设置的版本相同的 drush php。

这会导致与作曲家相关的问题,因为它正在读取错误的 PHP 版本。

我安装这个库的步骤,即

将 composer.phar 文件从“DevDesktop/tools”文件夹复制到我的 Drupal 项目根目录,然后通过 drush 使用“composer require League/csv”,这给了我这个错误....

'这个包需要 php >= 5.5.9 但你的 php 版本 <5.4.45> 不满足这个要求。

“drush php”给了我这个……“贾斯汀·吉勒曼的 Psy Shell v0.8.3”

我已经检查了在线资源是否有类似的错误,但没有一个解决方案符合我的情况,因此发布了这个问题。

不确定这是否与问题有关,但我注意到“DevDesktop\tools\drush.bat”有第一行,即

IF "%PHP_ID%"=="" (SET PHP_ID=php5_5)

我改成

IF "%PHP_ID%"=="" (SET PHP_ID=php5_6)

堆栈停止/启动并尝试下载“作曲家需要租约/csv”但没有变化(结果相同)。

提前致谢。

4

1 回答 1

0

找到了这个错误的解决方案并想分享,因为它可以帮助其他有同样问题的人,并可能改进解决方案,因为它似乎是一个快速修复,而它应该是一个通用修复:)

如果你安装 Acquia DevDesktop 软件,composer 默认自带这个。

通过 Acquia DevDesktop 软件,我们可以轻松地在 php 版本之间切换,也可以设置默认的 php 版本,但是当我尝试通过 composer 下载库时,这并没有帮助,它一直在阅读 5.4 版。

由于 Acquia DevDesktop 支持不同的 PHP 版本,即 5.3、5.4、5.5、5.6、7。默认情况下,composer 正在读取 php 版本 5.4,我仍然需要找到需要修改的文件,以便可以为 composer 更改默认的 php 版本。

就我而言,我所做的是...

转到程序文件 > DevDesktop > 工具文件夹。

有 4 个具有不同扩展名但名称相同的文件,即“作曲家”。删除这些所有文件将从您的系统中删除作曲家。

从https://getcomposer.org/下载 composer.exe并给它一个目标文件夹,即“程序文件 > DevDesktop > php5_6”并安装。

安装后,现在转到您的项目并使用命令提示符或 drush 控制台,输入“composer require League/csv”,它应该下载项目“供应商”文件夹中的所有文件。

于 2017-07-11T09:03:38.997 回答