PageRenderTime 44ms CodeModel.GetById 18ms RepoModel.GetById 0ms app.codeStats 0ms

/docs/languages/de/modules/zend.console.getopt.configuration.rst

https://github.com/gullij/zf2-documentation
ReStructuredText | 204 lines | 144 code | 60 blank | 0 comment | 0 complexity | d34337df85564cd018d1ccd2744f6df2 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. .. EN-Revision: none
  2. .. _zend.console.getopt.configuration:
  3. Konfigurieren von Zend\Console\Getopt
  4. =====================================
  5. .. _zend.console.getopt.configuration.addrules:
  6. Regeln für das Hinzufügen von Optionen
  7. --------------------------------------
  8. Man kann mehr Optionsregeln hinzufügen, zusätzlich zu denen die schon im ``Zend\Console\Getopt`` Constructor
  9. definiert wurden, durch Verwendung der ``addRules()`` Methode. Das Argument für ``addRules()`` ist das gleiche wie
  10. das erste Argument für den Constructor der Klasse. Es ist entweder eine Zeichenkette im Format der kurzen Syntax
  11. wie für das Definieren für Optionen definiert, oder ein assoziatives Array im Format der langen Syntax wie für
  12. das Definieren für Optionen definiert. Siehe :ref:`Definieren von GetOpt Regeln <zend.console.getopt.rules>` für
  13. Details über die Syntax für die Definition von Optionen.
  14. .. _zend.console.getopt.configuration.addrules.example:
  15. .. rubric:: Verwenden von addRules()
  16. .. code-block:: php
  17. :linenos:
  18. $opts = new Zend\Console\Getopt('abp:');
  19. $opts->addRules(
  20. array(
  21. 'verbose|v' => 'Druckt zusätzliche Ausgaben'
  22. )
  23. );
  24. Das obige Beispiel zeigt das hinzufügen der ``--verbose`` Option mit einem Alias von ``-v`` zu einem Set von
  25. Optionen welche bereits im Aufruf durch den Constructor definiert wurden. Man kann kurze Format Optionen und lange
  26. Format Optionen in der gleichen Instanz von ``Zend\Console\Getopt`` vermischen.
  27. .. _zend.console.getopt.configuration.addhelp:
  28. Hilfstexte hinzufügen
  29. ---------------------
  30. Zusätzlich zum Definieren von Hilfstexten bei der Definition von Optionsregeln im langen Format, können
  31. Hilfstexte mit Optionsregeln verknüpft werden durch Verwendung der ``setHelp()`` Methode. Das Argument für die
  32. ``setHelp()`` Methode ist ein assoziatives Array, in welchen der Schlüssel ein Flag ist, und der Wert der
  33. betreffende Hilfetext.
  34. .. _zend.console.getopt.configuration.addhelp.example:
  35. .. rubric:: Verwenden von setHelp()
  36. .. code-block:: php
  37. :linenos:
  38. $opts = new Zend\Console\Getopt('abp:');
  39. $opts->setHelp(
  40. array(
  41. 'a' => 'Apfel Option, ohne Parameter',
  42. 'b' => 'Bananen Option, mit benötigtem Integer Parameter',
  43. 'p' => 'Pfirsich Option, mit optionalem Zeichenketten Parameter'
  44. )
  45. );
  46. Wenn Optionen mit Aliasen definiert wurden, kann jeder dieser Aliase als Schlüssel für das assizoative Array
  47. verwendet werden.
  48. Die ``setHelp()`` Methode ist der einzige Weg um einen Hilfetext zu definieren wenn die Optionen mit der kurzen
  49. Syntax definiert wurden.
  50. .. _zend.console.getopt.configuration.addaliases:
  51. Aliase für Optionen hinzufügen
  52. ------------------------------
  53. Aliase für Optionen können mit der ``setAliases()`` Methode definiert werden. Das Argument ist ein assoziatives
  54. Array, dessen Schlüssel ein zuvor definiertes Flag, und dessen Wert ein neuer Alias für dieses Flag ist. Diese
  55. Aliase werden mit jedem existierenden Alias für dieses Flag gemischt. Mit anderen Worten, die zuvor definierten
  56. Aliase sind noch immer in Verwendung.
  57. Ein Alias kann nur einmal definiert werden. Wenn versucht wird einen Alias nochmals zu definieren wird eine
  58. ``Zend\Console_Getopt\Exception`` geworfen.
  59. .. _zend.console.getopt.configuration.addaliases.example:
  60. .. rubric:: Verwenden von setAliases()
  61. .. code-block:: php
  62. :linenos:
  63. $opts = new Zend\Console\Getopt('abp:');
  64. $opts->setAliases(
  65. array(
  66. 'a' => 'apple',
  67. 'a' => 'apfel',
  68. 'p' => 'pfirsich'
  69. )
  70. );
  71. Im obigen Beispiel sind, nach Definition der Aliase, ``-a``, ``--apple`` und ``--apfel`` Aliase füreinander. Auch
  72. ``-p`` und ``--pfirsich`` sind füreinander Aliase.
  73. Die ``setAliases()`` Methode ist der einzige Weg um Aliase zu definieren wenn die Optionen mit der kurzen Syntax
  74. definiert wurden.
  75. .. _zend.console.getopt.configuration.addargs:
  76. Argument Listen hinzufügen
  77. --------------------------
  78. Standardmäßig verwendet ``Zend\Console\Getopt`` ``$_SERVER['argv']`` für die Analyse des Arrays von
  79. Kommandozeilen Argumenten. Alternativ kann das Array mit Argumenten als zweites Argument dem Constructor angegeben
  80. werden. Letztendlich können zusätzliche Argumente zu den bereits in Verwendung befindlichen hinzugefügt werden,
  81. durch Verwendung der ``addArguments()`` Methode, oder es kann das aktuelle Array von Argumenten ersetzt werden mit
  82. Hilfe der ``setArguments()`` Methode. In beiden Fällen ist der Parameter für diese Methoden ein einfaches Array
  83. von Zeichenketten, und die letztere Methode substituiert das Array für seine aktuellen Argumente.
  84. .. _zend.console.getopt.configuration.addargs.example:
  85. .. rubric:: Verwenden von addArguments() und setArguments()
  86. .. code-block:: php
  87. :linenos:
  88. // Normalerweise verwendet der Constructor $_SERVER['argv']
  89. $opts = new Zend\Console\Getopt('abp:');
  90. // Ein Array zu den bestehenden Argumenten hinzufügen
  91. $opts->addArguments(array('-a', '-p', 'p_parameter', 'non_option_arg'));
  92. // Ein neues Array als Ersatz für die bestehenden Argumente
  93. $opts->setArguments(array('-a', '-p', 'p_parameter', 'non_option_arg'));
  94. .. _zend.console.getopt.configuration.config:
  95. Konfiguration hinzufügen
  96. ------------------------
  97. Der dritte Parameter des ``Zend\Console\Getopt`` Constructors ist ein Array von Optionen zur Konfiguration welche
  98. das Verhalten der zurückgegebenen Objektinstanz beeinflusst. Es können auch durch Verwendung der ``setOptions()``
  99. Optionen für die Konfiguration definiert werden, oder es können auch individuelle Optionen mit der
  100. ``setOption()`` Methode verwendet werden.
  101. .. note::
  102. **Klarstellung des Ausdrucks "Option"**
  103. Der Ausdruck "Option" wird für die Konfiguration der ``Zend\Console\Getopt`` Klasse verwendet um der
  104. Terminologie zu folgen die überall im Zend Framework benutzt wird. Das ist nicht das selbe wie die
  105. Kommandozeilen Optionen die von der ``Zend\Console\Getopt`` Klasse analysiert werden.
  106. Die aktuell unterstützten Optionen sind durch Konstanten in der Klasse definiert. Diese Optionen, bzw deren
  107. konstanter Bezeichner (mit wörtlichem Wert in Großschreibweise) sind anbei gelistet:
  108. - ``Zend\Console\Getopt::CONFIG_DASHDASH`` ("dashDash"), wenn es ``TRUE`` ist, ermöglicht dieses spezielle Flag
  109. ``--`` das Ende von Flags zu signieren. Kommendozeilen Argumente welche dem Doppel-Bindestrich Zeichen folgen
  110. werden nicht als Option interpretiert selbst wenn das Argument mit einem Bindestrich beginnt. Diese
  111. Konfigurationsoption ist standardmäßig ``TRUE``.
  112. - ``Zend\Console\Getopt::CONFIG_IGNORECASE`` ("ignoreCase"), wenn es ``TRUE`` ist, werden Flags als Aliase
  113. voneinander betrachtet wenn Sie sich nur in der Groß- oder Kleinschreibung unterscheiden. Das bedeutet das
  114. ``-a`` und ``-A`` als gleiche Flags angesehen werden. Diese Konfigurationsoption ist standardmäßig ``FALSE``.
  115. - ``Zend\Console\Getopt::CONFIG_RULEMODE`` ("ruleMode") kann die Werte ``Zend\Console\Getopt::MODE_ZEND`` ("zend")
  116. und ``Zend\Console\Getopt::MODE_GNU`` ("gnu") haben. Diese Option sollte nicht verwendet werden ausser die Klasse
  117. wird erweiter um zusätzliche Syntax Formen zu unterstützen. Die zwei Modi die in der Basisklasse
  118. ``Zend\Console\Getopt`` unterstützt werden sind eindeutig. Wenn die Angabe eine Zeichenkette ist, nimmt die
  119. Klasse ``MODE_GNU`` an, sonst wird ``MODE_ZEND`` angenommen. Aber wenn die Klasse erweitert wird, und
  120. zusätzliche Syntaxformen hinzugefügt werden, kann der Modus durch Verwendung dieser Option definiert werden.
  121. Zusätzliche Konfigurationsoptionen können in zukünftigen Versionen dieser Klasse hinzugefügt werden.
  122. Die zwei Argumente der ``setOption()`` Methode sind ein Name einer Konfigurationsoption und ein Wert für die
  123. Option.
  124. .. _zend.console.getopt.configuration.config.example.setoption:
  125. .. rubric:: Verwenden von setOption()
  126. .. code-block:: php
  127. :linenos:
  128. $opts = new Zend\Console\Getopt('abp:');
  129. $opts->setOption('ignoreCase', true);
  130. Das Argument für die ``setOptions()`` Methode ist ein assoziatives Array. Die Schlüssel dieses Arrays sind die
  131. Namen der Konfigurationsoptionen, und die Werte sind die Konfigurationswerte. Das ist also das Array Format welches
  132. auch im Constructor der Klasse verwendet wird. Die definierten Konfigurationswerte werden mit der aktuellen
  133. Konfiguration zusammengefügt; es müssen also nicht alle Optionen angegeben werden.
  134. .. _zend.console.getopt.configuration.config.example.setoptions:
  135. .. rubric:: Verwenden von setOptions()
  136. .. code-block:: php
  137. :linenos:
  138. $opts = new Zend\Console\Getopt('abp:');
  139. $opts->setOptions(
  140. array(
  141. 'ignoreCase' => true,
  142. 'dashDash' => false
  143. )
  144. );