你如何改变你的应用在heroku平台上使用的php版本?

时间:2017-11-08 16:38:50

标签: php heroku composer-php

我正在尝试将myoku应用程序使用的PHP版本从默认的7.1更改为7.0。当我尝试在composer.json中定义它时,它会被忽略。我需要做什么?

3 个答案:

答案 0 :(得分:1)

Selecting a runtime开始,您需要使用composer.json并在那里指定PHP版本:

{
  "require": {
    "php": "^5.6.0"
  }
}

在您的情况下,请:

{
  "require": {
    "php": "7.0.0"
  }
}

答案 1 :(得分:0)

除了更新作曲家文件之外,如果您的应用程序需要“ php”:^ 5.6.0”或7.0.32,则需要确保您使用的heroku堆栈为“ heroku-16”而不是“ heroku- 18'。

在CLI中运行heroku stack以获取信息。默认情况下,它设置为最新版本'heroku-18',并使用已安装PHP 7.2的Ubuntu 18.04。

如果它位于“ heroku-18”上,请使用命令heroku stack:set heroku-16进行切换。

P.S:PHP 5.6和7.0版本将在2018年底到期。在此日期之后,PHP维护人员将不提供错误修复程序,包括关键的安全修复程序。强烈建议用户尽早将其应用程序更新到最新版本的PHP 7.2。有关PHP版本的支持时间表的更多信息,请参考PHP官方网站上的Supported Versions page

答案 2 :(得分:-1)

您需要正确类型的版本选择器。阅读https://getcomposer.org/doc/articles/versions.md

在您的情况下,~7.0.0允许7.0.0或更高版本,但不允许7.1。

请记住在更改后更新composer.lock,如https://devcenter.heroku.com/articles/php-support#selecting-a-runtime所述(请阅读整个部分;橙色框实际上完全回答了您在此处发布的问题)。

你真的应该更新你的代码。对PHP 7.0的支持将在几天内结束,除了安全修复程序之外,PHP团队将不再提供更新。见http://php.net/supported-versions.php