laravel5.6開發擴展包-針對雲通訊短信功能,開發服務provider

先貼出地址,回頭詳細記錄

github地址:https://github.com/ghoiufyia/laravel-package-yuntongxun.git

packageist地址:https://packagist.org/packages/shangning/yuntongxun

laravel的IOC容器和依賴注入,和提供的一個統一的服務的概念,可以極大的減輕開發工作量,當然你對於laravel的核心還要仔細研究,這個庫也只是我依樣畫葫蘆的嘗試,實現這個東西,一方面是能實現功能,另一方面也是希望通過這個過程,能深入的理解laravel容器的原理,及其運行過程,乃至於其實現。

YuntongxunServiceProvider.php中boot方法中是需要發佈的資源,包括配置文件,一些資源文件等,register方法中調用的是singleton。跳進singleton的實現代碼,然後參照其它自帶provider,實現。

$this->app->singleton('yuntongxun', function ($app) {
    return new Yuntongxun($app['config']);
});

下面是singleton的方法說明:

/**
 * Register a shared binding in the container.
 *
 * @param  string  $abstract
 * @param  \Closure|string|null  $concrete
 * @return void
 */
public function singleton($abstract, $concrete = null);

這是簡陋的provider實現,功能簡單,還需要結合研究laravel的代碼,實現更復雜的功能。目標是實現功能,但更需要學習代碼框架設計的思路。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章