2010-05-23 47 views
3

我試圖安裝的Magento安裝Magento的(電子商務平臺)PHP錯誤:意外T_OBJECT_OPERATOR ....嘗試使用SSH命令DreamHost的

我下面的教程,告訴我來運行這些命令SSH:./pear mage-setup

,但我得到這個錯誤:

Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /home/domainname.com/downloader/pearlib/php/System.php on line 400 

400線的代碼片段被註釋掉從system.php文件:

/* Magento fix for set tmp dir in config.ini 
    */ 
    if (class_exists('Maged_Controller',false)) { 
     /*line 400 */ 
     $magedConfig = Maged_Controller::model('Config',true)->load();** 
     if ($magedConfig->get('use_custom_permissions_mode') == '1' && 
      $mode = $magedConfig->get('mkdir_mode')) { 
      $result = System::mkDir(array('-m' . $mode, $tmpdir)); 
     } else { 
      $result = System::mkDir(array('-p', $tmpdir)); 
     } 

     if (!$result) { 
      return false; 
     } 
    } 

任何人都可以幫我明白這個錯誤嗎?

回答

0

我想知道雙恆星是在第五行是什麼:

      #        here - v 
$magedConfig = Maged_Controller::model('Config',true)->load();** 

編輯:你試圖使用「鏈接」($obj->func()->otherFunc())這在PHP5僅支持:

$magedConfig = Maged_Controller::model('Config',true)->load(); 

更改行這樣的:

$magedConfig = Maged_Controller::model('Config',true); 
$magedConfig = $magedConfig->load(); 

您的其他選擇是升級到PHP 5,但在此時遊戲中可能會破壞您的代碼。

+0

哎呀......那是我試圖發表評論這條線的目的是這個問題......他們其實不在文件中 – Jane 2010-05-23 05:23:06

+0

非常感謝您的幫助。我根據您的建議更改了代碼,並且還有其他錯誤發生。 另外,我的dreamhost accound說我使用php5-fastCGI。這個可以嗎?有什麼我應該做,以確保我運行PHP5? – Jane 2010-05-23 05:52:07

+0

如果你可以安裝Magento,你正在運行PHP 5. Magento不會運行在5.2以下的任何東西 – 2010-05-23 23:47:47

1

嘗試./mage mage-setup,而不是./pear mage-setup的PHP版本。

0

下列指示解決了這個問題對我來說: -

Solution:

In the directory that your magento installation is in

nano pear

after the first two lines paste

MAGE_PEAR_PHP_BIN=/usr/local/bin/php5;
export MAGE_PEAR_PHP_BIN

ctrl + o -> to save
ctrl + x -> to exit

上述解決方案是關於名爲「」出現在你的Magento的根文件夾通過終端編輯文件。如果你有FTP訪問,那麼你可以簡單地編輯文件「」通過在開頭添加下面幾行: -

MAGE_PEAR_PHP_BIN=/usr/local/bin/php5;
export MAGE_PEAR_PHP_BIN

來源:http://www.magentocommerce.com/boards/viewreply/222042/