Download the PHP package m3m0r7/async-promise without Composer

On this page you can find all versions of the php package m3m0r7/async-promise. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package async-promise

English | 日本語


AsyncPromise

What is the AsyncPromise?

The AsyncPromise is a library for processing concurrently on PHP which implementing similarity with Javascript's Promise.

Requirements

How to install

You can install as following command:

How to use

Get started

The Promise can be used in the same way JavaScript as following:

You can receive an exception to chain with catch method.

Or you can process a rejection by the second parameter on a Promise callback function.

And the then method can be multiple chained.

After calling then or catch method, you can use finally if you want to run something.

Promise::all(array)

The result is returned as a new Promise when all of the passed Promises are fulfilled until rejecting.

It will run until reject as following:

Promise::allSettled(array)

The result is returned as a new Promise when all of the passed Promises are processed.

Promise::race(array)

The result is returned as a new Promise when one of the passed Promises is processed.

Promise::any(array)

The result is returned as a new Promise when one of the passed Promises is fulfilled.

And it is not fulfilled, it will chain to catch method.

Promise::resolve(mixed)

It will resolve Promise.

It will reject Promise.

Promise::reject(string)

Drivers

You can choose to run concurrently driver. The AsyncPromise was implemented as following:

To switch other driver:

You must run a Promise in Promise::createContext(...) context if you use the SwooleDriver.

You will get a benefit with concurrency when using SwooleDriver. The below command is getting SwooleDriver performance:

The PolyfillDriver is a virtual process driver when concurrency driver is not installed. Therefore the PolyfillDriver does not increase performance because which is running on synchronization. For example, to run above code; it will show Take 8 sec.

How to test

You can run tests as following commands:


All versions of async-promise with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package m3m0r7/async-promise contains the following files

Loading the files please wait ....