Installation is super-easy via Composer
composer require modassir/promiseor add it by hand to your composer.json file.
useModassir\Promise\Promise;
(newPromise(function($resolve, $reject) {
$resolve('success');
$reject('An error accurred.');
}))->then(function($res) {
// echo : 'success'
})->catch(function() {
})->finally(function() {
// echo: strtoupper('Hello Worlds!');
});
(newPromise(function($resolve, $reject) {
$reject('An error accurred.');
$resolve('success');
}))->then(function() {
})->catch(function($res) {
// echo: 'An error accurred.'
})->finally(function() {
// echo: strtoupper('Hello Worlds!');
});
(newPromise(function($resolve, $reject) {
call_undfined_function();
$resolve('success');
$reject('An error accurred.');
}))->then(function() {
})->catch(function($res) {
$res->getMessage(); // Output: Call to undefined function call_undfined_function()$res->getCode(); // Output: 0$res->getLine(); // Output: 8$res->getFile(); // Output: C:\xampp\htdocs\promise\index.php$res->getTraceAsString(); // Output: #1 C:\xampp\htdocs\promise\index.php(9): Modassir\Promise\Promise->__construct(Object(Closure))
})->finally(function() {
// echo: strtoupper('Hello Worlds!');
});OR
useModassir\Promise\Promise;
$promise = newPromise(function($resolve, $reject) {
$resolve('success');
$reject('An error accurred.');
});
$promise->then(function($res) {
// echo : 'success'
})->catch(function() {
})->finally(function() {
// echo: strtoupper('Hello Worlds!');
});
$promise = newPromise(function($resolve, $reject) {
call_undfined_function();
$resolve('success');
$reject('An error accurred.');
});
$promise->then(function() {
})->catch(function($res) {
$res->getMessage(); // Output: Call to undefined function call_undfined_function()$res->getCode(); // Output: 0$res->getLine(); // Output: 8$res->getFile(); // Output: C:\xampp\htdocs\promise\index.php$res->getTraceAsString(); // Output: #1 C:\xampp\htdocs\promise\index.php(9): Modassir\Promise\Promise->__construct(Object(Closure))
})->finally(function() {
// echo: strtoupper('Hello Worlds!');
});