所以,我在我的apps/myprogram/lib文件夾中有一些php文件。例如apps/myprogram/lib/myLibA.class.php如何在Symfony中包含多個php庫?
當我在我的modules/actions/scripts中運行,並嘗試使用myLibA中的函數時,我不能。因爲symfony抱怨myLibA類沒有定義。
我需要指定symfony框架中myLibA.class.php是必需庫的任何位置嗎?
所以,我在我的apps/myprogram/lib文件夾中有一些php文件。例如apps/myprogram/lib/myLibA.class.php如何在Symfony中包含多個php庫?
當我在我的modules/actions/scripts中運行,並嘗試使用myLibA中的函數時,我不能。因爲symfony抱怨myLibA類沒有定義。
我需要指定symfony框架中myLibA.class.php是必需庫的任何位置嗎?
Symfony的自動加載器在默認情況下會在頂級目錄<project>/lib
中查找您的類。在該目錄或下面的任何文件(除了「供應商」)將被搜索類。 Symfony用類聲明搜索任何.php文件並將它們添加到自動加載系統。
此外,您可以在應用程序的autoload.yml
文件中添加搜索路徑。例如,對於我的應用程序之一,我已經把第三方的Flickr庫<project>/vendor/phpFlickr
,我<project>/apps/frontend/config/autoload.yml
文件看起來像:
autoload:
vendor_php_flickr:
path: %SF_LIB_DIR%/vendor/phpFlickr
recursive: on
,允許低於所有類... /供應商/ phpFlickr被自動加載。
這是一種替代方法,您可以定義/添加到您的preExecute這樣的:
public function preExecute()
{
$this->getContext()->getConfiguration()->loadHelpers('Foo', 'Bar');
}
取自(http://oldforum.symfony-project.org/index.php/m/92916/ )