PHPackages                             asika/simple-console - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [CLI &amp; Console](/categories/cli)
4. /
5. asika/simple-console

ActiveLibrary[CLI &amp; Console](/categories/cli)

asika/simple-console
====================

One file console framework to help you write build scripts.

2.0.3(12mo ago)26183.1k—9.7%11MITPHPPHP &gt;=8.4CI passing

Since Mar 4Pushed 7mo ago2 watchersCompare

[ Source](https://github.com/asika32764/php-simple-console)[ Packagist](https://packagist.org/packages/asika/simple-console)[ RSS](/packages/asika-simple-console/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (5)Dependencies (6)Versions (15)Used By (1)

PHP Simple Console V2.0
=======================

[](#php-simple-console-v20)

[![GitHub Actions Workflow Status](https://camo.githubusercontent.com/1f36d1074abd7bc832cb3cd33d3c645bda5c2370757d70825706792d91140943/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6173696b6133323736342f7068702d73696d706c652d636f6e736f6c652f63692e796d6c3f7374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/1f36d1074abd7bc832cb3cd33d3c645bda5c2370757d70825706792d91140943/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6173696b6133323736342f7068702d73696d706c652d636f6e736f6c652f63692e796d6c3f7374796c653d666f722d7468652d6261646765)[![Packagist Version](https://camo.githubusercontent.com/2806bea961f6cf8c4138422f7f83c670ee7c28e6de77a5529f9c485db4662b82/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6173696b612f73696d706c652d636f6e736f6c653f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/asika/simple-console)[![Packagist Downloads](https://camo.githubusercontent.com/8eef71aed09a972034151c127e33a2e29208f8c9d69bbf6f2b54ee2bd4d59bd8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6173696b612f73696d706c652d636f6e736f6c653f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/asika/simple-console)

Single file console framework to help you write scripts quickly, **v2.0 requires PHP 8.4 or later**.

> This package is highly inspired by [Symfony Console](https://symfony.com/doc/current/components/console.html) and Python [argparse](https://docs.python.org/3/library/argparse.html).

- [PHP Simple Console V2.0](#php-simple-console-v20)
    - [Installation](#installation)
    - [Getting Started](#getting-started)
        - [Run Console by Closure](#run-console-by-closure)
        - [Run Console by Custom Class](#run-console-by-custom-class)
        - [The Return Value](#the-return-value)
    - [Parameter Parser](#parameter-parser)
    - [Parameter Definitions](#parameter-definitions)
        - [Show Help](#show-help)
        - [Override Help Information](#override-help-information)
    - [Parameter Configurations](#parameter-configurations)
        - [Get Parameters Value](#get-parameters-value)
        - [Parameters Type](#parameters-type)
            - [`ARRAY` type](#array-type)
            - [`LEVEL` type](#level-type)
        - [Parameters Options](#parameters-options)
            - [`description`](#description)
            - [`required`](#required)
            - [`default`](#default)
            - [`negatable`](#negatable)
        - [Parameters Parsing](#parameters-parsing)
    - [Error Handling](#error-handling)
        - [Wrong Parameters](#wrong-parameters)
        - [Verbosity](#verbosity)
    - [The Built-In Options](#the-built-in-options)
        - [Disable Built-In Options for Console App](#disable-built-in-options-for-console-app)
    - [Input/Output](#inputoutput)
        - [STDIN/STDOUT/STDERR](#stdinstdoutstderr)
        - [Output Methods](#output-methods)
        - [Input and Asking Questions](#input-and-asking-questions)
    - [Run Sub-Process](#run-sub-process)
        - [Hide Command Name](#hide-command-name)
        - [Custom Output](#custom-output)
        - [Disable the Output](#disable-the-output)
        - [Override `exec()`](#override-exec)
    - [Delegating Multiple Tasks](#delegating-multiple-tasks)
    - [Contributing and PR is Welcome](#contributing-and-pr-is-welcome)

Installation
------------

[](#installation)

Use composer:

```
composer require asika/simple-console
```

Download single file: [Download Here](https://raw.githubusercontent.com/asika32764/php-simple-console/master/src/Console.php)

CLI quick download:

```
# WGET
wget https://raw.githubusercontent.com/asika32764/php-simple-console/master/src/Console.php
chmod +x Console.php

# CURL
curl https://raw.githubusercontent.com/asika32764/php-simple-console/master/src/Console.php -o Console.php
chmod +x Console.php
```

Getting Started
---------------

[](#getting-started)

### Run Console by Closure

[](#run-console-by-closure)

Use closure to create a simple console script.

```
#!/bin/sh php
