2012-03-12 57 views
0

我正在嘗試將magento與我的cakephp應用程序集成。 我已經插入這段代碼,如何整合cakephp和magento?

<?php 

require_once '../../../magento/app/Mage.php'; 

umask(0); 
Mage::app('default'); 
$productId = 5; 
$product = Mage::getModel('catalog/product')->load($productId); 
echo "Name: ".$product->getName()."<br />"; 
echo "Type: ".$product->getStockItem()->getTypeId()."<br />"; 
echo "Price: ".$product->getFinalPrice()."<br />"; 
echo "Quantity available: ".(int)$product->getStockItem()->getQty()."<br />"; 
?> 

,我們必須插入CTP文件 此代碼,並嘗試運行代碼,收到此錯誤:

Constant DS already defined [C:\wamp\www\magento\app\Mage.php, line 27] 
Fatal error: Cannot redeclare __() (previously declared in C:\wamp\www\vendorweb\lib\Cake\basics.php:501) in C:\wamp\www\magento\app\code\core\Mage\Core\functions.php on line 96 

我已經改變Mage.php一樣,

if(!defined('DS')) { 
define('DS', DIRECTORY_SEPARATOR); 

} 

但是其他錯誤仍然發生。

所以任何人都可以請告訴我怎麼做? 我可以在cakehp和magento中同時運行函數__()嗎?因爲根據我的要求,我無法更改magento的單行代碼。

回答

0

如果錯誤仍然發生,則必須在其他地方定義。在項目範圍內搜索define('DS' 並查看它在哪裏定義。

+0

是的,它是在的index.php但不是解決辦法,是我用上面代碼錯誤,但'致命錯誤:無法重新聲明__()'來了。而不是整合完成。那麼在cakephp中顯示magento產品的解決方案是什麼? – Dolly 2012-03-12 08:41:45

0

在文件'../../../magento/app/Mage.php'你評論的線,大概27,具有以下內容:

//define('DS', DIRECTORY_SEPARATOR);