我正在尝试在GoDaddy托管的Linux服务器上安装Composer(http://getcomposer.org/download/),但它无法正常工作。无论我尝试哪种方法,我最终都遇到了以下错误的某些版本:
解析错误:语法错误,第290行意外“{”。
第290行引用此文件中的第290行:https://getcomposer.org/installer这是try-catch块的开头。事实上,甚至是一个简单的脚本,如:
echo '<?php echo "Hello World "; try {echo "Goodbye";} catch (Exception $e) {} ?>' | php
产生相同类型的语法错误(原谅尴尬的管道.GoDaddy似乎不喜欢-r选项)。
同样,如果我将该代码放在文件“argh.php”中并运行php -f argh.php
,我会收到语法错误,但如果我在浏览器中访问该页面,它将正常工作。
有人知道为什么php会一直阻塞try-catch块或者我可以安装Composer的任何其他方式吗? (P.S.,我使用的是PHP 5.3)
答案 0 :(得分:0)
echo '<?php echo "Hello World "; try {echo "Goodbye";} catch (Exception $e) {} ?>' | /web/cgi-bin/php5
工作得很好。所以我只是愚蠢。我现在尝试使用/ web / cgi-bin / php5安装Composer,看看会发生什么。
答案 1 :(得分:0)
由于评论中隐藏的答案似乎被忽视了:
命令行上的php
命令是旧的PHP版本(4.x),它不支持相同的语法。主机可以提供并行安装的各种PHP版本,新版本可用作php5
,php53
,php5.3
,/web/cgi-bin/php5
或一些此类备用可执行文件。请参阅主持人的文档。