wilkques/container 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

wilkques/container

最新稳定版本:v4.0.2

Composer 安装命令:

composer require wilkques/container

包简介

README 文档

README

Latest Stable Version License

How to use

composer require wilkques/container

require '<project path>/vendor/Container/src/helpers.php';
require '<project path>/vendor/Container/src/Container.php';

Method

  1. register

    container()->register(
    '<your class name>',
    new '<your class name>'
    );
    
    // or
    
    container()->register([
    	[
    		'<your class name1>',
    		new '<your class name1>'
    	],
    	[
    		'<your class name2>',
    		new '<your class name2>'
    	],
    
    	...
    ]);
  2. bind

    $abstract = new \Your\Class\Name;
    
    container()->bind('<your class name>', function () use ($abstract) {
    	return $abstract;
    });
  3. singleton The singleton method binds a class or interface into the container that should only be resolved one time. Once a singleton binding is resolved, the same object instance will be returned on subsequent calls into the container:

    $abstract = new \Your\Class\Name;
    
    container()->singleton('<your class name>', function () use ($abstract) {
    	return $abstract;
    });
  4. scoped

    $abstract = new \Your\Class\Name;
    
    container()->scoped('<your class name>', function () use ($abstract) {
    	return $abstract;
    });
  5. get

    container()->get('<your class name>');
  6. make

    container('<your class name>');
    
    // or
    
    container()->make('<your class name>');
  7. call

    container()->call(['<your class name>', '<your class method name>'], ['<your class method vars name>' => '<your class method vars value>']);
    
    // or
    
    container()->call([new '<your class name>', '<your class method name>'], ['<your class method vars name>' => '<your class method vars value>']);
    
    // or
    
    container()->call(function (\Your\Class\Name $abstract) {
    	// do something
    });
  8. forgetScopedInstances Clear all of the scoped instances from the container.

  9. forgetInstance

    container()->forgetInstance('<your class name>');
  10. forgetInstances Clear all of the instances from the container.

  11. flush Flush the container of all bindings and resolved instances.

统计信息

  • 总下载量: 491
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 6
  • 推荐数: 1

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2021-10-19