Laravel CLI utility for file selection with a menu interface using PHP School / CliMenu
You can install the package via composer:
composer require alio/cli-file-tree
This Laravel CLI utility basically allows you to select a folder or a file on your system using a menu interface with navigation feature and return the selected file's path.
You can also filter the files by (multiple) file extensions using the --filter option.
php artisan clifiletree [--filter=?] [--fg=?] [--bg=?]
--filter : (optional) display only folders or certain file types by extensions. Use 'folder' to display folders only. Supports multiple file extension filters by seperating with comma (Ex: csv,xls)
--fg : (optional) foreground color (def. green)
--bg : (optional) background color (def. black)
(possible color values : black, red, green, yellow, blue, magenta, cyan, white)
Below is an example to use the library in your project (the best use case is calling it from your custom command)
use Illuminate\Support\Facades\Artisan;
use Symfony\Component\Console\Output\BufferedOutput;
...
$output = new BufferedOutput;
Artisan::call('clifiletree', ['--filter' => 'csv'], $output);
$file = $output->fetch();
// do whatever you want with the $file
...
composer test
This package requires PHP posix extension enabled, it may not work in Windows Wamp/Xampp environments. Compatibility with the new Windows Terminal is being investigated.
10/25/2019 - v1.0.0 released.
If you discover any problems please report in the issues section.
Contributions and PRs are welcome!
The MIT License (MIT). Please see License File for more information.