每天laravel-20160820| ContextualBinding

原创 2016年06月02日 10:17:23
<?php

namespace Illuminate\Container;

use Illuminate\Contracts\Container\ContextualBindingBuilder as ContextualBindingBuilderContract;

class ContextualBindingBuilder implements ContextualBindingBuilderContract
{
    /**
     * The underlying container instance.
     *
     * @var \Illuminate\Container\Container
     */
    protected $container;// The underlying container instance

    /**
     * The concrete instance.
     *
     * @var string
     */
    protected $concrete;// a instance about concrete

    /**
     * The abstract target.
     *
     * @var string
     */
    protected $needs;// a target about the abstract

    /**
     * Create a new contextual binding builder.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  string  $concrete
     * @return void
     */
    public function __construct(Container $container, $concrete)
    {
        $this->concrete = $concrete;
        $this->container = $container;// set the
    }

    /**
     * Define the abstract target that depends on the context.
     *
     * @param  string  $abstract
     * @return $this
     */
    public function needs($abstract)
    {
        $this->needs = $abstract;

        return $this;
    }// function is needs

    /**
     * Define the implementation for the contextual binding.
     *
     * @param  \Closure|string  $implementation
     * @return void
     */
    public function give($implementation)
    {
        $this->container->addContextualBinding($this->concrete, $this->needs, $implementation);
    }// Define the implementation for the contextual binding
}
版权声明:随便转载了..............

相关文章推荐

每天laravel-简单的运行流程

摘要: 每天laravel-简单的运行流程 第一天:开始学习laravel 框架 首先 了解 laravel的运行流程   第一步:包含自动加载文件 require __DIR__.'...
  • mei_520
  • mei_520
  • 2017年06月02日 08:59
  • 211

每天laravel

第一天:开始学习laravel 框架 首先 了解 laravel的运行流程 第一步:包含自动加载文件 require __DIR__.'/../bootstrap/autoload.php'; ...

[李景山php]每天laravel[004]-自动加载函数流程之composer autoload_real.php

我们探索了 从 1 app/public/index.php 开始 2 加载 bootstrap /autoload.php 文件 3 然后加载到 vendor / autoload.php文件...

[李景山php]每天laravel-20161131|BelongsToMany.php-3

/** * Save a new model and attach it to the parent model. * * @param \Illuminate\Dat...

[李景山php]每天laravel-20161130|BelongsToMany.php-2

/** * Get the pivot attributes from a model. * * @param \Illuminate\Database\Eloquen...

[李景山php]每天laravel-20161126|MigrateCommand.php

[李景山php]每天laravel[025]-laravel 基础知识 --- 中间件

中间件:感觉就是一个类似于 守卫/保镖 的方式,随时监控正常服务之外的处理。我们可以把很多通用的需要做成中间件:比如: 登录权限检测、日志记录、头信息修改 等等。。。第一个: 创建中间件 控制器类 ...

[李景山php]每天laravel[024]-laravel 基础知识 --- 路由

1 常用的基础路由: 基础路由larvael 版本 高于 5.4 版本:最经典的版本就是:Route::get(‘/url’,function(){ return ‘Hello worl...

[李景山php]每天laravel[027]-laravel 基础知识 --- 请求

laravel 的请求目录:1 访问请求 基础使用:在函数内定义 Request $request 升级使用:如果需要传递其它的参数,例如: Route:put(‘user/{id}’...

[李景山php]每天laravel[018]-laravel 中级任务--小白教程----实际操作-创建基础任务 to-do-list 案例 ---准备关系模型

如果你不是 php 小白,有其它的框架的基础,应都知道,几乎全部的 php框架都叫做 MVC框架,这里里面的 M 就是 Model 的含义,也就是模型的意思。M 在这里就不多解释了,如果不懂,自行百度...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:每天laravel-20160820| ContextualBinding
举报原因:
原因补充:

(最多只允许输入30个字)