Skip to content

Writing to a stream

Davide Bellettini edited this page Nov 12, 2014 · 4 revisions

Connecting to EventStore

use EventStore\EventStore;
use EventStore\WritableEvent;
use EventStore\WritableEventColection;

$es = new EventStore('http://127.0.0.1:2113');

Writing a single event

$event = WritableEvent::newInstance('SomethingHappened', ['foo' => 'bar']);
$es->writeToStream('StreamName', $event);

Writing an array of events

$events = new WritableEventCollection([
    WritableEvent::newInstance('SomethingHappened', ['foo' => 'bar']),
    WritableEvent::newInstance('SomethingElseHappened', ['fizz' => 'buzz']),
]);
$es->writeToStream('StreamName', $events);

Optimistic locking

$event = WritableEvent::newInstance('SomethingHappened', ['foo' => 'bar']);
$expectedVersion = 42;
$es->writeToStream('StreamName', $event, $expectedVersion);

Clone this wiki locally