https://github.com/lajosbencz/php-progress-bar
Simple CLI progress bar for PHP
https://github.com/lajosbencz/php-progress-bar
ansi cli php progressbar terminal
Last synced: 11 months ago
JSON representation
Simple CLI progress bar for PHP
- Host: GitHub
- URL: https://github.com/lajosbencz/php-progress-bar
- Owner: lajosbencz
- License: lgpl-3.0
- Created: 2020-01-24T16:42:18.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-01-27T13:41:26.000Z (over 6 years ago)
- Last Synced: 2024-08-15T16:11:32.046Z (almost 2 years ago)
- Topics: ansi, cli, php, progressbar, terminal
- Language: PHP
- Size: 32.2 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# php-progress-bar
[](https://travis-ci.com/lajosbencz/php-progress-bar)
[](https://codecov.io/gh/lajosbencz/php-progress-bar/branch/master)
Extensible ANSI (only for terminals) progress bar for PHP
## Install
```bash
composer require --save lajosbencz/progress-bar
```
## Default usage
```php
use LajosBencz\ProgressBar;
$pb = ProgressBar\Factory::createDefault(10);
for($i=0; $i<10; $i++) {
sleep(1);
$pb($i + 1);
}
```
## Customized usage
```php
use LajosBencz\ProgressBar;
$pb = new ProgressBar\ProgressBar(10);
$pb->setFormatterClass(ProgressBar\Formatter\SimpleFormatter::class, [60]);
$pb->setOutput(STDOUT);
for($i=0; $i<10; $i++) {
sleep(1);
$pb($i + 1);
}
```
## Factory usage
```php
use LajosBencz\ProgressBar;
$pbf = new ProgressBar\Factory(
// formatter class name:
ProgressBar\Formatter\SimpleFormatter::class,
// formatter args, will be passed into the constructor:
[10, "|O-|"],
// output stream to write to:
STDERR
);
$pb = $pbf->create(10);
for($i=0; $i<10; $i++) {
sleep(1);
$pb($i + 1);
}
```
## TODO
- Comments
- Interface with PSR logging facility
- Meaningful tests