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

Magento 从根文件夹(Laravel)访问php文件,magento,laravel,Magento,Laravel,在我的Magento项目文件夹中,我想安装laravel,以便从laravel访问Mage。目录结构如下 Magento(root) --laravel --app ... ... 我怎样才能做到这一点?或者建议任何其他方式,以便我可以从拉威尔访问magento,如下所示 require_once ('../app/Mage.php'); Mage::app(); Mage::getSingleton('core/session', array('name' =

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

Magento(root)
  --laravel
  --app
  ...
  ...
我怎样才能做到这一点?或者建议任何其他方式,以便我可以从拉威尔访问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

确保路径正确,它应该可以工作

用这个

require_once (realpath(dirname(__FILE__) . '/../app/Mage.php'));
您的路径(
require_once('../app/Mage.php');
)不正确,这就是您面临此问题的原因。除此逻辑外,您的代码是正确的

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

Magento(root)
  --laravel
      |__somefile.php  
  --app
  ...
  ...
我使用了
dirname()
函数来解决这个问题

require_once (dirname(dirname(dirname(dirname(realpath(__FILE__))))).'/app/Mage.php');
我不认为这是一个好的或聪明的方式,但它的工作。谢谢。

也许是有用的人:

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>";
}
require_once(dirname(dirname(dirname(dirname(realpath(uu文件_uuЮЮЮ)))。/../app/Mage.php');
\Mage::app();
$blocks=\Mage::getModel('cms/block')->getCollection();
foreach($block作为$block){
echo$block->getTitle()。“
”; }
您是否尝试过此代码?你有什么问题吗?是的,我试过这个密码。它不起作用。打开必需的“../app/Mage.php”时出现错误。您是否尝试了答案中提到的解决方案?我不清楚您的过程。我是从laravel中的某个php文件调用的,它是控制器。但是不起作用。@Alvi_1987如果您可以用控制器相对于Mageno的正确位置更新问题,我可以提供帮助。提供Laravel控制器文件的路径(相对于magento安装)。顺便说一句,错误是什么?控制器位置:D:\xampp\htdocs\magento\custom\app\controllers\ProductsController.php错误:无法打开必需的“../app/Mage.php”require_一次(realpath(dirname(FILE)。”/../../../../app/Mage.php');dirname()提供父文件夹,因此如果它正常工作,则完全可以。