PHP Implementation of CloudEvents. Supports version 0.3 of the specification.
Via Composer
$ composer require pascaldevink/cloudevents
$cloudEvent = new \PascalDeVink\CloudEvents\V03\CloudEvent(
new EventId('89328232-6202-4758-8050-C9E4690431CA'),
new Source(Uri::createFromString('github://pull')),
new EventType('com.github.pull.create'),
new SchemaUrl(Uri::createFromString('http://github.com/schema/pull')),
new Subject('1234'),
new EventTime(new DateTimeImmutable('2018-08-09T21:55:16+00:00')),
null,
JsonData::fromArray([])
);
$formatter = new \PascalDeVink\Format\JsonFormatter();
$jsonCloudEvent = $formatter->encode($cloudEvent);
echo $jsonCloudEvent;
$newCloudEvent = $formatter->decode($jsonCloudEvent);
$ composer test
Please see CONTRIBUTING and CODE_OF_CONDUCT for details.
The MIT License (MIT). Please see License File for more information.