kiefernwald/affair

一个用于处理事件的库。

v1.4.1 2021-10-02 09:06 UTC

This package is auto-updated.

Last update: 2024-09-29 04:49:46 UTC


README

Build Status

Affair是一个简单的库,可以简化处理事件的工作。它是Oberhavel.jetzt项目的核心。

安装

composer require kiefernwald/affair

用法

实现自己的EventProvider,遵循EventProviderInterface。它应该处理对您的存储的访问

<?php

use Carbon\Carbon;
use Kiefernwald\Affair\Model\Event;
use Kiefernwald\Affair\Model\EventPlace;
use Kiefernwald\Affair\Services\AffairInterface;
use Kiefernwald\Affair\Services\EventProviderInterface;

class MyEventProvider implements EventProviderInterface {

    public function provideSingle(string $eventId): Event
    {
        // ...
    }

    public function provideMany(
        Carbon $start,
        Carbon $end,
        ?EventPlace $place = null,
        int $maxResults = AffairInterface::MAX_EVENTS
    ): array
    {
        // ...
    }

    public function storeEvent(Event $event)
    {
        // ...
    }
}

在您的代码中实例化主服务,并传递您的事件提供者实例

    // ...

    $affair = new Affair(new MyEventProvider());

    // ...

使用服务的主要方法

  • getEvents 获取事件列表
  • getEvent 通过id获取单个事件
  • createEvent 创建并存储新事件