Magento 从根文件夹(Laravel)访问php文件
在我的Magento项目文件夹中,我想安装laravel,以便从laravel访问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' =
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()提供父文件夹,因此如果它正常工作,则完全可以。