在使用laravel框架式可能有些業(yè)務(wù)需求會(huì)頻繁地用到我們自定義的類庫(kù)
這時(shí)候我們把這些自定義類庫(kù)加入到框架的自動(dòng)加載中會(huì)方便很多
如果我們使用的composer安裝的laravel框架,那么添加自定義類庫(kù)就會(huì)方便很多
1 首先在app目錄下創(chuàng)建一個(gè)新的目錄,命名Lunar(這個(gè)是自定義的)
2 類文件Lunar.php放在Lunar目錄下 注意文件中的類名和文件名要一致
3 接著找到框架根目錄下的composer.json文件 在文件中做出如下修改
"autoload": { "classmap": [ "database", "app/Lunar/Lunar.php" ], "psr-4": { "App\\": "app/" } },
4 在cmd或者linux中進(jìn)入laravel框架的根目錄 執(zhí)行如下命令
composer dumpautoload
此后就可以在laravel的控制器中使用Lunar類了
當(dāng)然使用前要注意一點(diǎn)就是在控制器的頭部先引入命名空間
use App\Lunar\Lunar;public function index(){ $lunarClass = new Lunar();}
如果laravel不是通過(guò)composer安裝的該怎么引入這個(gè)類庫(kù)呢
在我使用composer添加完畢Lunar類后框架內(nèi)全局搜索 發(fā)現(xiàn)
laravel/vendor/composer/autoload_classmap.php 文件中的第9行多了如下數(shù)據(jù)
'App\\Lunar\\Lunar' => $baseDir . '/app/Lunar/Lunar.php',
laravel/vendor/composer/autoload_static.php 文件中的第266行多了如下數(shù)據(jù)
'App\\Lunar\\Lunar' => __DIR__ . '/../..' . '/app/Lunar/Lunar.php',
所以個(gè)人猜想手動(dòng)添加這兩處也可以達(dá)到效果
ps:我所用的laravel框架版本為5.2
聯(lián)系客服