自定义类的依赖注入

一、自定义类

新建文件:App\demo\fx.php

<?php

namespace App\demo;

class fx{

    public function show(){

        echo 'my name is wz';

    }

}

二、将fx类绑定到容器:

首先用artisan命令创建服务者:php artisan make:provider myServiceProvider

然后绑定自定义类fx

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;

use App\demo\fx;

class myServiceProvider extends ServiceProvider

{

    /**

    * Bootstrap the application services.

    *

    * @return void

    */

    public function boot()

    {

        //

    }

    /**

    * Register the application services.

    *

    * @return void

    */

    public function register()

    {

        $this->app->bind('fx',function(){

            return new fx;

        });

    }

}

三、将服务者myServiceProvider注册到config\app.php中:

        App\Providers\AppServiceProvider::class,

        App\Providers\AuthServiceProvider::class,

        App\Providers\EventServiceProvider::class,

        App\Providers\RouteServiceProvider::class,

        App\Providers\myServiceProvider::class,

四、控制器中实现依赖注入

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

use App\demo\fx;

class index extends Controller

{

    //

    public function index(fx $fx){

        $fx->show();

    }

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Laravel框架一:原理机制篇 Laravel作为在国内国外都颇为流行的PHP框架,风格优雅,其拥有自己的一些特...
    Mr_Z_Heng阅读 3,725评论 0 13
  • 先说几句废话,调和气氛。事情的起由来自客户需求频繁变更,伟大的师傅决定横刀立马的改革使用新的框架(created ...
    wsdadan阅读 3,076评论 0 12
  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom阅读 2,719评论 0 3
  • 过去做事情急,什么东西拿起来就用,不喜欢进行系统性的学习,造成在使用过程中的错误和低效,现在感觉自己耐心多了,用之...
    马文Marvin阅读 2,013评论 0 10
  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些阅读 2,045评论 0 2