Skip to content

WebZ

Latest Version on Packagist Total Downloads Software License Master

⚠️ This project is in the experimental phase. The API may change any time.

WebZ is a library that aims to abstract calls to different WebServices (in HTTP or SOAP).

It automatically handles caching, events and parsing results to an array.

$bus = WebServiceBus::builder()
    ->withTransport(new HttpTransport())
    ->withTransport(new SoapTransport())
    ->withCache(new SomeCacheStore())
    ->withEventDispatcher(new SomeEventsDispatcher())
    ->build();

// Synchronous
$foo = $bus->call(new GetFooWebService(123));

// Asynchronous
$promises = $bus->callAsync(
    new GetFooWebService(123),
    new GetFooWebService(456),
);

foreach ($promises as $promise) {
    $foo = $promise->wait();
}