【问题标题】:How to install gettext extension for php on Heroku?如何在 Heroku 上为 php 安装 gettext 扩展?
【发布时间】:2015-11-25 00:09:22
【问题描述】:

我无法在 Heroku 平台上安装 gettext 扩展。在开发环境gettext 上有效,但在 Heroku 上无效。

我的结构:

/app
    /web
        .user.ini
        gettext.php
        index.php
    composer.json
    composer.lock
    Procfile
    README.md

.user.ini

extension = gettext.so

composer.json

{
   "require": {
      "php": "~5.6.4",
      "slim/slim": "~2.6",
      "nategood/httpful": "*",
      "gettext": "*"
    },
    "require-dev": {
      "heroku/heroku-buildpack-php": "*"
   }
}

还有代码gettext.php

if (!function_exists("gettext")){ echo "gettext is not installed\n";}
else{echo "gettext is supported\n";}

返回:

gettext is not installed

当我尝试heroku run bashcomposer update 之后:

Problem 1
   - The requested PHP extension ext-gettext * is missing from your system.

【问题讨论】:

    标签: php heroku composer-php gettext


    【解决方案1】:

    首先你需要使用 ext- 前缀来应用扩展。

    {
       "require": {
          "ext-gettext": "*"
        },
        "require-dev": {
          "heroku/heroku-buildpack-php": "*"
       }
    }
    

    运行composer update

    如果您仍然收到错误,则意味着 composer 无法更新您的供应商文件以获得 gettext。我有同样的问题,认为这是作曲家的问题。

    对于真正的奇偶校验,您应该尝试获取所需的库,但您可以忽略本地 gettext 的缺失:

    composer update --ignore-platform-reqs
    

    Composer 将在没有错误的情况下运行,然后您可以将其推送到 Heroku。 Heroku 将在启用 gettext 的情况下构建 PHP。

    【讨论】:

    • 谢谢!问题是--ignore-platform-reqs,因为我是 OSX 用户。
    猜你喜欢
    • 2017-05-09
    • 1970-01-01
    • 1970-01-01
    • 2019-02-14
    • 1970-01-01
    • 2013-03-20
    • 1970-01-01
    • 2023-01-19
    • 2020-01-03
    相关资源
    最近更新 更多