Heroku上的PHP错误,但不适用于本地环境

时间:2013-12-01 15:51:55

标签: php heroku

On Heroku我在这个文件中得到一个“解析错误:语法错误,意外'['在第35行的/app/www/Embed/UrlResolver.php”:https://github.com/oscarotero/Embed/blob/master/Embed/UrlResolver.php

奇怪的是它在我的本地环境(MAMP)上运行良好。一个区别是Heroku使用PHP 5.3.27而我的MAMP版本是5.4.10,但似乎不太可能是问题(脚本需要'PHP 5.3+')。我很想测试它,但我还没有发现5.4 buildpack并没有让所有东西都变成kablooey。

此终端输出中的任何内容都能解释错误吗?

-----> Removing .DS_Store files
-----> PHP app detected
-----> Bundling mcrypt version 2.5.8
-----> Bundling Apache version 2.2.25
-----> Bundling PHP version 5.3.27
-----> Discovering process types
   Procfile declares types -> (none)
   Default types for PHP   -> web

有人知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

iirc正确PHP 5.4支持

$value = somethingWhichReturnsAnArray()[37];

而PHP 5.3没有并且会报告意外的'['。这可能就是这样。也许你正在使用的图书馆说它是5.3+,实际上并非如此。查看该文件的第35行,看看它是否正在这样做。如果是这样,通过使用返回的数组/集合的中间变量,它应该很容易修复。