omegaalfa/promise

A Promise implementation in PHP

dev-main 2024-04-24 01:57 UTC

This package is not auto-updated.

Last update: 2024-05-20 17:02:43 UTC


README

Uma implementação de promessas em PHP

Descrição

Essa classe Promise é uma implementação de promessas em PHP, que permite lidar com operações assíncronas de forma mais fácil e segura.

Características

  • Suporte a callbacks para lidar com resultados de operações assíncronas
  • Estado da promessa é gerenciado internamente (pending, fulfilled, rejected)
  • Possibilidade de encadear múltiplos callbacks com then
  • Suporte a erro handling com catch

Exemplo de uso

use src\promises\Promise;

function fetchDataFromApi(): Promise {
    $promise = new Promise();
    // Simula uma chamada à API que demora 2 segundos
    usleep(2000000); // 2 seconds
    $promise->resolve('Received data from API');
    return $promise;
}

fetchDataFromApi()
    ->then(function ($data) {
        echo "Received data: $data\n";
    })
    ->then(function () {
        echo "Data processing completed\n";
    })
    ->catch(function ($error) {
        echo "Error: $error\n";
    });

Contribuição

Se desejar contribuir com melhorias ou correções, fique à vontade para criar uma pull request ou abrir uma issue no repositório.

Licença

Este projeto está licenciado sob a Licença MIT.