Documentation

IOInterface

The Input/Output helper interface.

Tags
author

François Pluchino francois.pluchino@opendisplay.com

Table of Contents

DEBUG  = 16
NORMAL  = 2
QUIET  = 1
VERBOSE  = 4
VERY_VERBOSE  = 8
ask()  : string
Asks a question to the user.
askAndHideAnswer()  : string
Asks a question to the user and hide the answer.
askAndValidate()  : mixed
Asks for a value and validates the response.
askConfirmation()  : bool
Asks a confirmation to the user.
getAuthentication()  : array<string|int, mixed>
Get the username and password of repository.
getAuthentications()  : array<string|int, mixed>
Get all authentication information entered.
hasAuthentication()  : bool
Verify if the repository has a authentication information.
isDebug()  : bool
Is the output in debug verbosity?
isDecorated()  : bool
Is this output decorated?
isInteractive()  : bool
Is this input means interactive?
isVerbose()  : bool
Is this output verbose?
isVeryVerbose()  : bool
Is the output very verbose?
loadConfiguration()  : mixed
Loads authentications from a config instance
overwrite()  : mixed
Overwrites a previous message to the output.
overwriteError()  : mixed
Overwrites a previous message to the error output.
select()  : int|string|array<string|int, mixed>
Asks the user to select a value.
setAuthentication()  : mixed
Set the authentication information for the repository.
write()  : mixed
Writes a message to the output.
writeError()  : mixed
Writes a message to the error output.

Constants

Methods

ask()

Asks a question to the user.

public ask(string $question[, string $default = null ]) : string
Parameters
$question : string

The question to ask

$default : string = null

The default answer if none is given by the user

Tags
throws
RuntimeException

If there is no data to read in the input stream

Return values
string

The user answer

askAndHideAnswer()

Asks a question to the user and hide the answer.

public askAndHideAnswer(string $question) : string
Parameters
$question : string

The question to ask

Return values
string

The answer

askAndValidate()

Asks for a value and validates the response.

public askAndValidate(string $question, callable $validator[, null|int $attempts = null ][, mixed $default = null ]) : mixed

The validator receives the data to validate. It must return the validated data when the data is valid and throw an exception otherwise.

Parameters
$question : string

The question to ask

$validator : callable

A PHP callback

$attempts : null|int = null

Max number of times to ask before giving up (default of null means infinite)

$default : mixed = null

The default answer if none is given by the user

Tags
throws
Exception

When any of the validators return an error

Return values
mixed

askConfirmation()

Asks a confirmation to the user.

public askConfirmation(string $question[, bool $default = true ]) : bool

The question will be asked until the user answers by nothing, yes, or no.

Parameters
$question : string

The question to ask

$default : bool = true

The default answer if the user enters nothing

Return values
bool

true if the user has confirmed, false otherwise

getAuthentication()

Get the username and password of repository.

public getAuthentication(string $repositoryName) : array<string|int, mixed>
Parameters
$repositoryName : string

The unique name of repository

Return values
array<string|int, mixed>

The 'username' and 'password'

getAuthentications()

Get all authentication information entered.

public getAuthentications() : array<string|int, mixed>
Return values
array<string|int, mixed>

The map of authentication data

hasAuthentication()

Verify if the repository has a authentication information.

public hasAuthentication(string $repositoryName) : bool
Parameters
$repositoryName : string

The unique name of repository

Return values
bool

isDebug()

Is the output in debug verbosity?

public isDebug() : bool
Return values
bool

isDecorated()

Is this output decorated?

public isDecorated() : bool
Return values
bool

isInteractive()

Is this input means interactive?

public isInteractive() : bool
Return values
bool

isVerbose()

Is this output verbose?

public isVerbose() : bool
Return values
bool

isVeryVerbose()

Is the output very verbose?

public isVeryVerbose() : bool
Return values
bool

loadConfiguration()

Loads authentications from a config instance

public loadConfiguration(Config $config) : mixed
Parameters
$config : Config
Return values
mixed

overwrite()

Overwrites a previous message to the output.

public overwrite(string|array<string|int, mixed> $messages[, bool $newline = true ][, int $size = null ][, int $verbosity = self::NORMAL ]) : mixed
Parameters
$messages : string|array<string|int, mixed>

The message as an array of lines or a single string

$newline : bool = true

Whether to add a newline or not

$size : int = null

The size of line

$verbosity : int = self::NORMAL

Verbosity level from the VERBOSITY_* constants

Return values
mixed

overwriteError()

Overwrites a previous message to the error output.

public overwriteError(string|array<string|int, mixed> $messages[, bool $newline = true ][, int $size = null ][, int $verbosity = self::NORMAL ]) : mixed
Parameters
$messages : string|array<string|int, mixed>

The message as an array of lines or a single string

$newline : bool = true

Whether to add a newline or not

$size : int = null

The size of line

$verbosity : int = self::NORMAL

Verbosity level from the VERBOSITY_* constants

Return values
mixed

select()

Asks the user to select a value.

public select(string $question, array<string|int, mixed> $choices, bool|string $default[, bool|int $attempts = false ][, string $errorMessage = 'Value "%s" is invalid' ][, bool $multiselect = false ]) : int|string|array<string|int, mixed>
Parameters
$question : string

The question to ask

$choices : array<string|int, mixed>

List of choices to pick from

$default : bool|string

The default answer if the user enters nothing

$attempts : bool|int = false

Max number of times to ask before giving up (false by default, which means infinite)

$errorMessage : string = 'Value "%s" is invalid'

Message which will be shown if invalid value from choice list would be picked

$multiselect : bool = false

Select more than one value separated by comma

Tags
throws
InvalidArgumentException
Return values
int|string|array<string|int, mixed>

The selected value or values (the key of the choices array)

setAuthentication()

Set the authentication information for the repository.

public setAuthentication(string $repositoryName, string $username[, string $password = null ]) : mixed
Parameters
$repositoryName : string

The unique name of repository

$username : string

The username

$password : string = null

The password

Return values
mixed

write()

Writes a message to the output.

public write(string|array<string|int, mixed> $messages[, bool $newline = true ][, int $verbosity = self::NORMAL ]) : mixed
Parameters
$messages : string|array<string|int, mixed>

The message as an array of lines or a single string

$newline : bool = true

Whether to add a newline or not

$verbosity : int = self::NORMAL

Verbosity level from the VERBOSITY_* constants

Return values
mixed

writeError()

Writes a message to the error output.

public writeError(string|array<string|int, mixed> $messages[, bool $newline = true ][, int $verbosity = self::NORMAL ]) : mixed
Parameters
$messages : string|array<string|int, mixed>

The message as an array of lines or a single string

$newline : bool = true

Whether to add a newline or not

$verbosity : int = self::NORMAL

Verbosity level from the VERBOSITY_* constants

Return values
mixed

Search results