我正在创建一些magento模块, 我需要在外部文件“thirdPartyCode.php”中使用一些3rdParty类“ThiredPartyClassA”和“ThiredPartyClassB”。
我应该在哪里放置文件thirdPartyCode.php? 如果我可以在我的一个Action处理程序中使用它,我应该如何引用(require_once)?
谢谢, 的Eyal
答案 0 :(得分:14)
我最终在我的模块主目录下创建了一个lib目录。 它似乎是“两全其美”。
$ExternalLibPath=Mage::getModuleDir('', 'My_Module') . DS . 'lib' . DS .'EXTERNALLIB.php';
require_once ($ExternalLibPath);
答案 1 :(得分:4)
您可以在没有Magento的情况下使用PHP中的文件,因此如果需要,您可以实际使用require_once
。如果您想保持代码清洁,可能需要将其放入Magento的/lib
文件夹中,因为它是一个系统库。我不确定这是否在默认的包含路径中,因此您可能不得不摆弄要求。
为了清洁,您可能还想围绕此代码创建一个包装器并使用Magento模型/帮助器来操作它们。
希望有所帮助!
谢谢, 乔
答案 2 :(得分:1)
与任何PHP脚本一样 - 您可以随意在任何地方包含文件。
但是,您可能希望在Magento中使用内置自动加载器。我很确定Magento使用Zend进行自动加载。 (无论哪种方式,你都可以使用)
与Magento不同,Zend拥有良好的文档资料。请在此处查看http://framework.zend.com/manual/en/zend.loader.autoloader.html