【发布时间】:2016-05-29 00:00:22
【问题描述】:
基本上我有一个问题——我们有一个基于 PHP 5.4 构建的 Symfony 站点,但我们的服务器运行的是 PHP 5.3(是的——它很旧,上面有 200 多个站点,所以我不想升级以防它变旧网站!)
我们知道问题在于 Doctrine(速记数组语法) - 可以手动更新文件并使用较旧的数组语法。
但我应该可以通过 Composer 完成 - 但我不确定要使用哪个命令。
我知道这可能会非常简单。我想我会先问一下,因为如果出现问题,我可能会节省恢复备份的时间!
更新:
试过composer install
问题 1
- 学说/orm v2.5.0 需要 php >=5.4 -> 您的 PHP 版本 (5.3.28) 不满足该要求。
- 学说/orm v2.5.0 需要 php >=5.4 -> 您的 PHP 版本 (5.3.28) 不满足该要求。
- 对教条/orm v2.5.0 的安装请求 -> 可满足于教条/orm[v2.5.0]。
试过composer install --ignore-platform-reqs
无需安装或更新
试过composer update
致命错误:第 51 行 phar:///usr/local/bin/composer/src/Composer/DependencyResolver/Rule.php 中允许的内存大小为 335544320 字节已用尽(尝试分配 64 字节)
没想到会有这样的响应 - 可能是服务器配置问题。可惜它看起来确实在做某事!
【问题讨论】:
-
命令是什么意思?只需打开您的 composer.json 并将所需的 php 版本更改为 5.3... 的东西。您只需检查所有必需的捆绑软件是否支持这些版本。即学说 Bundle 需要 "php": ">=5.3.9",
-
好的 - 所以只要运行 composer update 就会降级该学说以在 5.3 上运行。目前 composer 中的行是 "php": ">=5.3.3",
-
问题是其他有 php 要求的依赖项,这就是为什么 ignore-platform-reqs 应该工作!
-
我要做的是在 5.3 下创建一个新的 Symfony 项目: composer create-project symfony/framework-standard-edition my_project "2.7.*" 然后使用生成的 composer.json 作为我的开始观点。当然,将您的开发机器设置回 5.3。
标签: php symfony composer-php