2012-10-21 23 views
0

我試圖在家用控制器中使用Faker庫,但我不知道如何包含它。該庫的文檔使用此:Laravel包含一個使用autoload.php的庫

require_once '/path/to/Faker/src/autoload.php'; 
$faker = Faker\Factory::create(); 

但Laravel有loading classes不同的方式,但我沒有這樣的圖書館找到一個例子。

那麼我該怎麼做?

回答

0

你應該看看Registering a namespace,它應該照顧你所需要的。 Faker遵循命名空間的PSR0標準,因此您需要告訴laravel如何找到這些文件。在您的application/start.php文件中放置這些指令:

Autoloader::namespaces(array(
    'Faker' => path('libraries').'path/to/Faker/src/Faker', 
)); 

希望有所幫助!

編輯:

而且我意識到,如果你移動的src /法克爾文件夾放到application/librariesapplication/libraries/Faker它應該會自動加載。

+0

一對夫婦的問題。您的「轉移到圖書館」建議不起作用(我找到_Class'Faker \ Factory'not found_)。你的第一個也不行(至少我是這麼認爲的),它給了我你需要使用date.timezone ..._ –

+0

關於date.timezone錯誤檢查http://stackoverflow.com/questions/ 8704522 /停止警告日期功能日期從本地主機 關於另一個問題,如果我今天得到片刻我會嘗試自己安裝Faker。 –

+0

那麼我使用庫方法得到了這個工作。見https://github.com/Kindari/faker/commit/e7e84a65480dc4ba0b9b5ae1e04a37f474d3dd22#diff-74 - 這是一個新的克隆laravel與最新的faker進入圖書館。不需要其他配置。 'application/routes.php'顯示用法。 –

1

我想你使用作曲家添加它? 我用一個lib,我有安裝與作曲家(Imagine),我想用作曲家加載腳本,所以我做這start.php:

// Composer package 
require_once $GLOBALS['laravel_paths']['base'] . 'vendor' . DS . 'autoload.php';