亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

Laravel中使用自己編寫類庫的3種方法

2024-05-04 23:31:09
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Laravel中使用自己編寫類庫的3種方法,本文講解了增加可直接實例化的類、增加可直接調用的函數、增加稍微復雜的類庫三種方式,需要的朋友可以參考下
 

雖然Composer使得我們可以重用很多現有的類庫(例如packagist.org中的),但是我們仍然可能用到一些不兼容composer的包或者類庫。另外在某一項目中,我們也可能會創建某一類庫,而且可能并沒有制作成為composer package 的打算。這個時候我們可以通過以下方式來使用自己的特有類庫。

增加可直接實例化的類

有些需要直接在項目中使用的類,可以通過以下方式增加到Laravel中

1.創建類庫文件app/libraries/class/myClass.php
2.寫入文件內容

 

復制代碼代碼如下:

<?php
class Message {
    public static function display() {

 

    }
}
?>

 

在app/start/globals.php中增加類導入路徑

 

復制代碼代碼如下:

<?php 
ClassLoader::addDirectories(array(

 

    app_path().'/commands',
    app_path().'/controllers',
    app_path().'/models',
    app_path().'/database/seeds',
    app_path().'/libaries/class', // 在這里增加

));
?>

 

在composer.json中增加autoload目錄

 

復制代碼代碼如下:

"autoload": {
    "classmap": [
        "app/commands",
        "app/controllers",
        "app/models",
        "app/database/migrations",
        "app/database/seeds",
        "app/tests/TestCase.php",
        "app/libraries/class"   //在這里增加
    ]
},

 

1.執行composer dump-autoload來創建導入映射
2.使用自己導入的類直接調用Message::display()即可

這種方法同樣也是增加隊列類的方法,很多人不知道Laravel中隊列處理類應該放在哪里,其實按照上面的方法,在app目錄下創建一個queues目錄,然后讓其可以直接實例化即可

增加可直接調用的函數

有人喜歡用v()來代替var_dump(),想要在Laravel中這么做也非常容易

1.創建一個函數文件app/libraries/function/helper.php
2.寫入文件內容

 

復制代碼代碼如下:

<?php 
function v($msg){
    var_dump($msg);
}
?>

 

把文件增加到composer自動導入列表中

 

復制代碼代碼如下:

"autoload": {
   "classmap": [
       ...
   ],
   "files": [
       "app/libraries/function/helper.php"
   ],
},

 

或者在項目中顯示require這個文件。打開app/start/global.php,在末尾增加:

復制代碼代碼如下:

require app_path().'/libraries/function/helper.php';

個人感覺這兩種方式都OK,如果想要控制這個文件加載的時間,甚至可以在filter.php文件中增加以下內容
復制代碼代碼如下:

App::before( function( $request ) {
    require( "{$GLOBALS['app']['path.base']}/app/libraries/function/helper.php" );
});

 

在項目中直接使用函數v('hello world');

增加稍微復雜的類庫

有的時候一個類庫不僅僅是一個文件那么簡單,因此下面的方式更加適合有多個文件多個結構的類庫。

創建psr0或者psr4標準的目錄結構。

復制代碼代碼如下:

libraries
    Myapp
        Search (note directory is capitalized)
            Search.php
            SearchFacade.php
            SearchServiceProvider.php
        AnotherLib

Myapp/Search/Search.php中Search類的命名空間為Myapp/Search。

 

修改composer中autoload

復制代碼代碼如下:

"autoload": {
    "classmap": [
        "app/commands",
        "app/controllers",
        "app/models",
        "app/libraries",
        "app/database/migrations",
        "app/database/seeds",
        "app/tests/TestCase.php"
    ]
    ,
    "psr-0": {
         "Myapp": "app/libraries"
    }
},

在項目中使用new Myapp/Search/Search()來實例化某一類

 

總結

雖然Laravel沒有強制哪種方式最好,但是有一定的標準可以使得項目結構清晰,多人合作開發時省去很多交流成本。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲天堂影视av| 成人黄色片在线| 亚洲xxxx做受欧美| 成人观看高清在线观看免费| 九九久久久久99精品| 成人免费高清完整版在线观看| 亚洲自拍小视频免费观看| 91豆花精品一区| 97精品在线观看| 亚洲男人天堂手机在线| 国产精品久久久久久久久男| 黑人狂躁日本妞一区二区三区| 欧美老少做受xxxx高潮| 久久影院中文字幕| 亚洲国内高清视频| 国产一区二区三区久久精品| 欧美激情视频一区二区三区不卡| 日韩电视剧免费观看网站| 2018中文字幕一区二区三区| 中文字幕亚洲一区| 欧美在线视频免费| 宅男66日本亚洲欧美视频| 色综合老司机第九色激情| 91日韩在线视频| 久久99精品视频一区97| 日日摸夜夜添一区| 亚洲系列中文字幕| 亚洲精品乱码久久久久久金桔影视| 国产成人激情小视频| 成人做爰www免费看视频网站| 国产一区二区三区精品久久久| 国产97在线视频| 中文字幕亚洲一区在线观看| 精品成人av一区| 一区二区福利视频| 欧美日韩国产影院| 亚洲精品之草原avav久久| 成年无码av片在线| 久久久久久久亚洲精品| 欧美猛男性生活免费| 国产精品久久久久久搜索| 亚洲国产天堂久久综合网| 日韩av在线导航| 欧美性受xxxx黑人猛交| 日本高清视频精品| 久久免费成人精品视频| 91精品久久久久久久久久久久久久| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲精品一区av在线播放| 丝袜亚洲另类欧美重口| 日韩在线精品视频| 亚洲精品在线看| 日韩亚洲精品视频| 精品中文字幕久久久久久| 日韩在线免费视频观看| 亚洲国产女人aaa毛片在线| 日韩在线观看精品| 中文字幕不卡av| 成人激情黄色网| 成人性教育视频在线观看| 欧美天天综合色影久久精品| 都市激情亚洲色图| 国产成人综合久久| 亚洲国产精品人人爽夜夜爽| 91久久久久久久| 日韩免费在线看| 欧美黑人一级爽快片淫片高清| 亚洲a∨日韩av高清在线观看| 国产亚洲欧洲高清一区| 日韩极品精品视频免费观看| 亚洲女人初尝黑人巨大| 久久精品电影网站| 97香蕉超级碰碰久久免费软件| 亚洲精品日韩丝袜精品| 久久天堂av综合合色| 欧美另类极品videosbestfree| 日韩av一区二区在线| 欧美午夜片欧美片在线观看| 在线播放日韩欧美| 日韩欧亚中文在线| 亚洲日韩中文字幕在线播放| 夜夜躁日日躁狠狠久久88av| 欧美日韩一区二区三区在线免费观看| 久久久久久国产三级电影| 欧美成年人视频网站欧美| 日韩在线观看网站| 日韩在线欧美在线国产在线| 亚洲欧洲在线免费| 亚洲黄色有码视频| 国产精品丝袜一区二区三区| 91九色国产社区在线观看| 欧美影院成年免费版| 国产精品一区二区久久久| 九九九久久久久久| 91在线观看免费| 久久成人这里只有精品| 亚洲最新在线视频| 国产欧美日韩精品专区| 国产精品中文字幕久久久| 国内精品美女av在线播放| 91欧美视频网站| 精品国产乱码久久久久久婷婷| 日韩精品在线免费观看| 91视频免费在线| 亚洲网站视频福利| 97av在线视频免费播放| 久久久久久久一区二区| 久久久久五月天| 欧美在线欧美在线| 日韩在线观看免费网站| 日韩小视频网址| 欧美在线视频观看免费网站| 国产精品久久久久久婷婷天堂| 91中文在线观看| 日韩在线视频观看| 日韩视频欧美视频| 中文字幕欧美日韩在线| 国产ts一区二区| 精品国内亚洲在观看18黄| 国产精品成人一区| 国产精品成人免费电影| 欧美xxxx18性欧美| 国内精品久久久久| 国产精品自产拍在线观看中文| 日本人成精品视频在线| 欧美xxxx18性欧美| 岛国视频午夜一区免费在线观看| 欧美一级淫片videoshd| 最近2019中文字幕mv免费看| 在线观看欧美日韩国产| 懂色av中文一区二区三区天美| 日韩av在线看| 久久免费少妇高潮久久精品99| 在线观看国产精品91| 成人黄色片网站| 成人久久一区二区三区| www.国产精品一二区| 欧美高清在线视频观看不卡| 欧美成人在线影院| 日韩黄色av网站| 亚洲综合中文字幕在线观看| 中文字幕在线日韩| 日韩黄色av网站| 91欧美精品成人综合在线观看| 色诱女教师一区二区三区| 欧美国产欧美亚洲国产日韩mv天天看完整| 欧美一级高清免费播放| 国产成人一区二| 亚洲高清久久久久久| 国产69精品久久久久9999| 亚洲色图五月天| 日韩精品亚洲精品| 欧洲日本亚洲国产区| 久久久久中文字幕2018| 亚洲偷熟乱区亚洲香蕉av| 欧美限制级电影在线观看| 欧美成人自拍视频| 欧美在线视频播放| 精品久久久久久久久久ntr影视| 欧美激情亚洲另类| 国产精品影片在线观看| 国产成人精品免高潮费视频| 欧美日韩视频在线| 国产精品久久久久久久久男|