如何在我的 Yii 应用程序中的任何地方调用这些库函数?我有一个图书馆:
#mylib.php
<?php
class MyLib {
public function foo()
{
echo "hello!";
}
}
并希望能够在我的 Yii 应用程序中调用此函数:
MyLib::foo();
我不知道在哪里放置我的库或如何/在哪里导入它。这只是我正在尝试做的事情的一个示例,但我正在尝试创建一个具有多个命名空间的库,以便我可以访问该库并在导入它后访问所有命名空间。
最佳答案
有几种方法。
注册库的自动加载器:
// Enable Zend autoloader spl_autoload_unregister(array('YiiBase', 'autoload')); // Disable Yii autoloader Yii::import('site.common.lib.*'); // Add Zend library to include_path Yii::import('site.common.lib.Zend.Loader.Autoloader', true); // Require Zend autoloader spl_autoload_register(array('Zend_Loader_Autoloader', 'autoload')); // Register Zend autoloader spl_autoload_register(array('YiiBase', 'autoload')); // Register Yii autoloader
将库添加到 config/main.php 的导入部分:
return array( // Autoloading 'import' => array( 'application.lib.*', 'application.components.*', 'site.common.extentions.YiiMongoDbSuite.*', ), );
在应用程序的任何位置自动加载:
Yii::import('application.lib.*');
关于php - 在 Yii 中包含外部库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8649064/