Simple PHP library for displaying spinners in the terminal while running a callback function.
You will need to have the pcntl extension installed.
The library uses this collection of spinners:
The spinners can be seen in action here
If you don't have the pcntl
extension installed, you can still use the library, but you will not see the spinner.
On windows use WSL. There may be some trouble using UTF-8 characters in the terminal on WSL.
In this case you can use the simpleDots
or simpleDotsScrolling
spinner.
The library will run a callback function in a separate process which displays the spinner. The main process will run the callback function and return the result.
composer require diversen/php-cli-spinners
<?php
require_once "vendor/autoload.php";
use Diversen\Spinner;
$spinner = new Spinner(spinner: 'simpleDots', message: "Loading");
$res = $spinner->callback(function () {
sleep(2);
return 42;
});
echo "$res\n"; // 42
Clone:
git clone https://github.com/diversen/php-cli-spinners.git
See examples folder. E.g. run php examples/simple.php
MIT © Dennis Iversen