使用composer下载Zend Framework 1.10.4

Use composer to download Zend Framework 1.10.4

我不太熟悉颠覆(或作曲家)。我们公司使用的网站有很多遗留代码,这些代码依赖于 1.10.4 版本的 Zend 的 DB class。我正在尝试弄清楚如何使用 composer 安装它。

这是我的 composer.json 文件。

{
    "repositories": [
        {
            "type": "vcs",
            "url": "http://framework.zend.com/svn/framework/standard/"
        }
    ],
    "require": {
        "framework.zend/framework": "1.10.4"
    }
}

他们给出了一些说明 here,但我似乎无法让它发挥作用。当我 运行 php composer.phar update.

时,我得到了两个结果之一

如果我使用上面的 composer.json,我会得到:

Your requirements could not be resolved to an installable set of packages.

Problem 1
    - The requested package framework.zend/framework could not be found in any version, there may be a typo in the package name.

如果我将我的要求键更改为 "zendframework/zf1": "1.10.4",它会说它正在检查从版本 0.0.1 到最新版本的所有 composer.json 文件,然后给我与上述相同的错误(名称更改除外)。我猜这是因为它指的是 git 存储库,而忽略了 "repositories" 字段中的内容。

谁能提供一个 composer.json 下载 ZF1 的例子。

如果你能弄清楚如何只包含某些组件,例如 DB、Acl 和缓存,那么加分......或者你可以肯定地确定这是不可能的,所以我不会浪费我的时间.

提前致谢。

我在 https://packagist.org 上浏览了一下,看看有哪些 Zend Framework 1 版本可用。

我还没有找到 1.10 版的 - 不过,如果您仔细观察,您可能会找到一个。 Zend 支持的官方版本是 1.12。我发现一个 repo 有 1.11 和 1.12,问题是 1.11.0(可能还有其他版本)缺少 "replace" 语句,如果你包含这个包,这将是一个问题,第二个有 "zendframework/zendframework1" 作为依赖项。

另请注意,仅使用某人的版本可能不包含原始代码,您必须检查您导入的代码是否仍按预期运行 - 并且不会安装任何安全问题或更糟的情况。

另一方面,您可以直接添加 ZF1 的原始 SVN 存储库,然后从那里获取所有版本。但是,SVN 下载是一个非常缓慢的过程,因为它会在任何版本的 ZF1 的单个小文件中移动大约 50 到 100 MB 的数据。

我自己获取未发布旧版本的方法是创建提取下载 ZIP 所需的必要元数据,并将其集成到公司网络中现有的 Satis 存储库中。开发人员和部署的本地下载要快得多。实际上,您可以添加一个 "package" 存储库,其中几乎包含已发布 ZF1 composer.json 的所有元数据,添加正确的版本并在 Zend 下载服务器上为 Z​​IP 下载 URL。对于一个应用程序,它可能是一个可用的解决方案。

但最后,您可能已经猜到了,最好的选择是将您的 Zend 框架更新到可用版本 1。12.x,最好是最新版本。