fousheezy/slim-core

Slim 框架的核心实用类

安装: 371

依赖者: 1

建议者: 0

安全: 0

星级: 0

关注者: 2

分支: 0

类型:lib

1.1.1 2015-09-29 17:13 UTC

This package is not auto-updated.

Last update: 2024-09-28 19:03:52 UTC


README

可以在应用程序之间复用的 Slim 核心实用类。

安装

composer require fousheezy/slim-core

文档

FzySlimCore\Util\Container

一个用于快速将服务添加到 Slim 应用容器的工厂

函数 registerServices

  • \Slim\Slim $app:要添加服务的 Slim 应用
  • array $config:配置的服务数组

此函数遍历配置键,每个键都应该包含一个数组。在这些数组中的每个数组中,字符串将是您在 slim 应用中引用的名称(例如 $app->config_key

  • 可调用项:此字符串键 => 可调用对数组将调用可调用的结果设置为服务值
  • 工厂:此字符串键 => 字符串值对数组实例化值中定义的类。此类必须实现 \FzySlimCore\Factory\ServiceFactoryInterface。调用 getService(\Slim\Slim $app) 的结果成为服务。
  • 可调用项:此字符串键 => 字符串值对数组以单例方式实例化值中定义的类。然而,如果键映射到数组,则该数组用作实例化类的配置。

可调用数组

通过在可调用项部分使用数组配置来实例化服务非常方便。

  • 数组必须包含一个 class 键,该键将指定要实例化的字符串类名。
  • 数组可以可选地包含一个 arguments 键,该键指定类构造函数参数的数组。注意:您可以使用字符串 "@serviceKey" 指定服务,容器类将自动将其转换为真实服务。
  • 数组可以可选地包含一个 calls 键,该键指定对象方法调用的列表。这是通过将 calls 设置为数组数组来完成的。每个子数组应有两个值;第一个值被视为字符串方法名,第二个值被视为传递给该方法的参数数组。与构造函数一样,带有 @ 前缀的字符串将被转换为它们代表的服务。

示例

'invokables' => [
    'my_service' => '\MyNamespace\Service\MyService',
    'second_service' => [
        'class' => '\MyNamespace\Service\SecondService'
        'arguments' => ['@my_service', 'a regular string', 3],
        'calls' => [
            ['registerHandler', ['@my_service3', 45]]
            ['setTimeout', [1]]
        ]
    ],
    'my_service3' => '\MyNamespace\Service\ThirdService',
]

在上面的示例中,$app 将有 3 个服务 my_servicesecond_servicemy_service3。前两个服务是简单的字符串定义,因此它们将被实例化和返回。

/* @var $service \MyNamespace\Service\MyService */
$service = $app->my_service;
/* @var $service \MyNamespace\Service\ThirdService */
$service = $app->my_service3;

second_service 键将按照以下顺序运行,当设置自身时:

    $service = new \MyNamespace\Service\SecondService($app->my_service, 'a regular string', 3);
    $service->registerHandler($app->my_service3, 45);
    $service->setTimeout(1);
    $app->second_service = $service;

FzySlimCore\Util\Mode

一个用于在 slim 应用上设置模式配置的实用类

静态函数 configureModes

  • \Slim\Slim $app:要应用模式的 Slim 应用
  • array $modeConfigs:要配置的模式数组

此函数遍历模式配置。每个键被视为模式名称,每个值是特定于该模式的配置数组。

FzySlimCore\Util\Page

一个包含分页参数信息的类。

FzySlimCore\Util\Params

一个包含可迭代数据集的类,可以在不检查键是否存在的情况下访问它。

FzySlimCore\Util\Result

一个标准化REST响应格式的分页结果类。