Zend_Console_Getopt-Introduction.xml 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.console.getopt.introduction">
  5. <title>Introduction</title>
  6. <para>
  7. La classe <classname>Zend_Console_Getopt</classname> aide les applications lancées en ligne
  8. de commande à analyser les options et arguments.
  9. </para>
  10. <para>
  11. Les utilisateurs peuvent spécifier des arguments en ligne de commande quand ils
  12. exécutent votre application. Ces arguments ont du sens dans l'application : changer son
  13. comportement, choisir des ressources, ou spécifier des paramètres. Beaucoup d'options ont
  14. une signification usuelle, par exemple "<command>--verbose</command>" permet la production
  15. d'informations supplémentaires dans beaucoup d'applications. D'autres options peuvent avoir
  16. un sens qui est différent pour chaque application. Par exemple, "<command>-c</command>"
  17. prend des sens différents lorsqu'il est utilisé dans <command>grep</command>,
  18. <command>ls</command>, et <command>tar</command>.
  19. </para>
  20. <para>
  21. Nous avons ci-dessous quelques définitions de termes. L'usage commun des termes
  22. varie, mais cette documentation utilisera les définitions ci-dessous.
  23. </para>
  24. <itemizedlist>
  25. <listitem>
  26. <para>
  27. "argument" : une chaîne de caractères qui
  28. apparaît dans la ligne de commande après le nom de la commande. Les arguments
  29. peuvent être des options ou bien peut apparaître sans option, appeler des
  30. ressources sur lesquelles la commande agit.
  31. </para>
  32. </listitem>
  33. <listitem>
  34. <para>
  35. "option" : un argument qui signifie que la commande va changer
  36. son comportement par défaut d'une manière quelconque.
  37. </para>
  38. </listitem>
  39. <listitem>
  40. <para>
  41. "flag" (drapeau) : la première partie d'une option, identifie le but de l'option.
  42. Un drapeau est précédé conventionnellement par un ou deux tirets
  43. ("<command>-</command>" or "<command>--</command>"). Un drapeau court comporte un
  44. caractère unique. Un drapeau long est une chaîne de plusieurs caractères. Un tiret
  45. simple précède un drapeau court ou un groupe de drapeaux courts. Un tiret double
  46. précède un drapeau long. Les drapeaux longs ne peuvent pas être groupés.
  47. </para>
  48. </listitem>
  49. <listitem>
  50. <para>
  51. "parameter" (paramètre) : la seconde partie d'une option ; une
  52. donnée qui peut accompagner un drapeau, si c'est applicable à l'option donnée. Par
  53. exemple, beaucoup de commandes acceptent "<command>--verbose</command>",
  54. mais typiquement cette option n'a aucun paramètre. Cependant, une option
  55. comme "<command>--user</command> a presque toujours besoin d'un paramètre
  56. à sa suite.
  57. </para>
  58. <para>
  59. Un paramètre peut être donné comme un argument séparé après un argument de
  60. drapeau, ou comme faisant partie de la même chaîne de caractères, séparé du drapeau
  61. par le symbole égal ("<command>=</command>"). La dernière forme est autorisée
  62. seulement avec des drapeaux longs. Par exemple, <command>-u username</command>,
  63. <command>--user username</command>, et <command>--user=username</command> sont
  64. des formats supportés par <classname>Zend_Console_Getopt</classname>.
  65. </para>
  66. </listitem>
  67. <listitem>
  68. <para>
  69. "cluster" (groupe) : les drapeaux courts peuvent être combinés dans une
  70. chaîne de caractère unique précédée par un tiret simple. Par exemple, "
  71. <command>ls -1str</command>" emploie un groupe de quatre drapeaux courts. Cette
  72. commande est équivalente à "
  73. <command>ls -1 -s -t -r</command>". Seuls les drapeaux courts peuvent être groupés.
  74. Vous ne pouvez pas faire un groupe de drapeaux longs.
  75. </para>
  76. </listitem>
  77. </itemizedlist>
  78. <para>
  79. Par exemple, dans "<command>mysql --user=root mabase</command>", "<command>mysql</command>"
  80. est la <emphasis>commande</emphasis>, "<command>--user=root</command>" est une
  81. <emphasis>option</emphasis>, "<command>--user</command>" est un
  82. <emphasis>drapeau</emphasis>, "<command>root</command>" est un
  83. <emphasis>paramètre</emphasis> de l'option, et
  84. "<command>mabase</command>" est un argument mais pas une option dans notre définition.
  85. </para>
  86. <para>
  87. <classname>Zend_Console_Getopt</classname> fournit une interface pour déclarer quels
  88. drapeaux sont valides pour votre application, produit une erreur et un message s'ils
  89. emploient un drapeau invalide, et transmet à votre application les drapeaux spécifiés
  90. par l'utilisateur.
  91. </para>
  92. <note>
  93. <title>Getopt n'est pas une application framework</title>
  94. <para>
  95. <classname>Zend_Console_Getopt</classname> <emphasis>n'interprète
  96. pas</emphasis> le sens des drapeaux ou des paramètres, cette classe n'exécute
  97. pas non plus de processus d'application ou n'invoque pas le code d'application. Vous
  98. devez implémenter ces actions dans votre propre code d'application. Vous pouvez
  99. utiliser la classe <classname>Zend_Console_Getopt</classname> pour analyser la ligne
  100. d'instruction et fournir des méthodes orientées objet pour savoir quelles options ont
  101. été données par un utilisateur, mais le code pour utiliser ces données pour appeler les
  102. parties de votre application devra être dans une autre classe <acronym>PHP</acronym>.
  103. </para>
  104. </note>
  105. <para>
  106. Les sections suivantes décrivent l'utilisation de
  107. <classname>Zend_Console_Getopt</classname>.
  108. </para>
  109. </sect1>