Command
abstract class Command extends Alvine
Befehl
Ein Befehl stellt ein Argument das Ihn auslöst und die verfügbaren Optionen bereit. Über die onMatch-Methoden der Argumente und Methoden wird das Verhalten des Befehls gesteuert.
// Schalteroption (boolean) mit dem Namen --myoption und dem Alias -o
$myOption = new \Alvine\Application\Console\Option\Boolean('myoption','o');
// Darf einmal auftreten
$myOption->setLimitCount(1);
// Hat einen Hilfetext
$myOption->setDescription('Beschreibung');
// Wird die Option aufgerufen so wird im Befehlsobjekt der Wert gesetzt
$myOption->onMatch = function(\Alvine\Application\Console\Option $option, $value) {
// ... mache etwas mit $option und $value
};
$arg = new \Alvine\Application\Console\Argument('myCommand');
// Option hinzufügen $arg->add($myOption); $arg->onMatch = function(\Alvine\Application\Console\Argument $argument, \Alvine\Types\StringList $options, \Alvine\Types\StringList $global) { // ... mache etwas mit $argument, $options, $global }; $arg->setDescription('Mein Befehl');
Ein Befehl bearbeitet massgeblich die onMatch() Methoden der Argumente und Optionen.
Properties
protected Assembly | $assembly | ||
protected PropertyText | $resourceText |
Methods
Argument
No description
Ressourcentexte initialisieren
Lokalisierten Text holen
Internationalisierung
Details
at line 101
__construct(Assembly $assembly)
Neuer Befehl
at line 126
abstract Argument
getArgument()
Argument
Liefert das Argument das diesen Befehl auslöst zurück. Soll dies der zentrale Befehl sein, so muss der Name des zurückgegebenen Arguments.
at line 132
Terminal
getTerminal()
at line 144
protected DefaultPresenter
initResourceText(string $resource = null, Directory $basepath = null)
Ressourcentexte initialisieren
at line 197
string
getText(string $text, string $default = null, string $pluralKey = null)
Lokalisierten Text holen
Beispiele wenn der Schlüssel nicht gefunden wird:
// Lokalisierung mit Default-Wert
Presenter::getText('my.key::name=Hans', 'Hallo!');
-> Hallo!
// Wird kein Default übergeben wird der Schlüssel ausgegeben Presenter::getText('my.key::name=Hans'); -> my.key::name=Hans
at line 232
string
replaceI18N(string $content, string $quoteCharList = null)
Internationalisierung
Die Platzhalter müssen mit i18n anfangen:
i18n{mykeytoreplace}
Die Eigenschaft muss dann mit dem Schlüssel angelegt werden:
mykeytoreplace=Text
In der Anwendungskonfiguration kann der Schlüssel application.web.i18n.showkeys auf true gesetzt werden.
Wird die Zeichenkette $quoteCharList übergeben, so werden alle Zeichen die darin enthalten sind mit einem Backslash versehen. Diese Funktion verwendet die PHP Version \addcslashes