从根文件夹(Laravel)访问php文件

时间:2015-05-25 11:44:12

标签: magento laravel

在我的Magento Project文件夹中,我想安装laravel,以便我可以从laravel访问Mage。目录结构如下

Magento(root)
  --laravel
  --app
  ...
  ...

我怎样才能做到这一点?或建议任何其他方式,以便我可以像laravel一样访问magento,如下所示。

require_once ('../app/Mage.php');
    Mage::app();
    Mage::getSingleton('core/session', array('name' => 'frontend'));

     $collection = Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('*'); 

更新

相对于magento的控制器位置

D:\xampp\htdocs\magento\custom\app\controllers\ProductsController.php

4 个答案:

答案 0 :(得分:1)

确保路径正确,它应该有效。

使用此

require_once (realpath(dirname(__FILE__) . '/../app/Mage.php'));

答案 1 :(得分:1)

您的路径(require_once ('../app/Mage.php');)不正确,这就是您遇到此问题的原因。除了这个逻辑,您的代码是正确的。

如果你从laravel中的somefile.php运行代码那么它应该可以工作。

Magento(root)
  --laravel
      |__somefile.php  
  --app
  ...
  ...

答案 2 :(得分:0)

我使用dirname()函数来解决这个问题。

require_once (dirname(dirname(dirname(dirname(realpath(__FILE__))))).'/app/Mage.php');

我不认为这是好的或聪明的方式,但它有效。感谢。

答案 3 :(得分:0)

也许有人有用:

require_once (dirname(dirname(dirname(dirname(realpath(__FILE__))))).'/../app/Mage.php');

\Mage::app();
$blocks = \Mage::getModel('cms/block')->getCollection();


foreach ($blocks as $block) {
    echo $block->getTitle()."<br>";
}