rmk/callback-resolver 问题修复 & 功能扩展

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

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

rmk/callback-resolver

Composer 安装命令:

composer require rmk/callback-resolver

包简介

Callback container and resolver service

README 文档

README

Simple callback resolver from any callback form (array, string, etc.). It supports also extracting a service from service container.

Examples

<?php
// Prepare some callbacks in different forms:

function my_awesome_function() {
    // do some awesome stuff ...
}

$fnCallback = function() {
    // do something cool here...
};

class MyGreatClass {
    public function myMethod()
    {
        // do other cool stuff ...
    }
    
    public function __invoke()
    {
        // Call me when you want to use the object as a function...
    }
};

$object = new MyGreatClass();

$stringCallback = 'my_awesome_function';
$arrayCallback = [$objCallback, 'myMethod'];

// A service container contains a service with name 'MyGreatService' and its value is $object
/** @var Psr\Container\ContainerInterface $serviceContainer */
$serviceContainer = MyServiceContainerFactory::create();

$resolver = new Terry\CallbackResolver\CallbackResolver($serviceContainer);

$resolver->resolve($stringCallback); // Will return a closure for 'my_awesome_function'
$resolver->resolve($arrayCallback); // Will return a closure for 'myMethod' from $object
$resolver->resolve(['MyGreatService']); // Will return the $object because it is callable (contains __invoke() method)
$resolver->resolve(['MyGreatService', 'myMethod']); // Will return a closure to 'myMethod' from $object
$resolver->resolve(MyGreatClass::class); // Can also resolve a callback via class name if it is callable (contains __invoke() method)
$resolver->resolve([MyGreatClass::class, 'myMethod']); //// Will return a closure to 'myMethod' from new MyGreatClass instance

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: Unknown
  • 更新时间: 2020-10-12

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固