| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- <?xml version="1.0" encoding="utf-8"?>
- <!-- EN-Revision: 15617 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.console.getopt.rules">
- <title>Déclarer les règles Getopt</title>
- <para>
- Le constructeur de la classe <classname>Zend_Console_Getopt</classname> prend un à trois
- arguments. Le premier argument déclare quelles options sont supportées par votre
- application. Cette classe supporte des formes de syntaxe alternatives pour déclarer les
- options. Voir les sections ci-dessous pour le format et l'utilisation de ces formes de
- syntaxe.
- </para>
- <para>
- Le constructeur prend deux arguments supplémentaires, qui sont facultatifs. Le
- deuxième argument peut contenir les arguments de la ligne de commande. La valeur par défaut
- est <code>$_SERVER['argv']</code>.
- </para>
- <para>
- Le troisième argument du constructeur peut contenir des options de configuration pour
- adapter le comportement de <classname>Zend_Console_Getopt</classname>. Voir la section
- <link linkend="zend.console.getopt.configuration.config">Ajouter une
- configuration</link> pour la référence des options disponibles.
- </para>
- <sect2 id="zend.console.getopt.rules.short">
- <title>Déclarer des options avec la syntaxe courte</title>
- <para>
- <classname>Zend_Console_Getopt</classname> supporte une syntaxe compacte semblable à
- cela employée par GNU Getopt (voir
- <ulink url="http://www.gnu.org/software/libc/manual/html_node/Getopt.html">
- http://www.gnu.org/software/libc/manual/html_node/Getopt.html</ulink>). Cette syntaxe
- supporte seulement des drapeaux courts (1 seul caractère). Dans une chaîne de caractère
- unique, vous entrez chacune des lettres qui correspondent aux drapeaux supportés par
- votre application. Une lettre suivie d'un caractère deux points ("<code>:</code>")
- indique un drapeau qui exige un paramètre.
- </para>
- <example id="zend.console.getopt.rules.short.example">
- <title>Utiliser la syntaxe courte</title>
- <programlisting language="php"><![CDATA[
- $opts = new Zend_Console_Getopt('abp:');
- ]]></programlisting>
- </example>
- <para>
- L'exemple ci-dessus montre l'utilisation de <classname>Zend_Console_Getopt</classname>
- pour déclarer que des options peuvent être données en tant que "<code>-a</code>",
- "<code>-b</code>" ou "<code>-p</code>". Le dernier drapeau exige un paramètre.
- </para>
- <para>
- La syntaxe courte est limitée aux drapeaux courts (1 seul caractère). Les alias, les
- types des paramètres, et les messages d'aide ne sont pas supportés dans la syntaxe
- courte.
- </para>
- </sect2>
- <sect2 id="zend.console.getopt.rules.long">
- <title>Déclarer des options avec la syntaxe longue</title>
- <para>
- Une syntaxe différente avec plus de possibilités est également disponible. Cette
- syntaxe permet d'indiquer des alias pour les drapeaux, les types de paramètres
- d'option, et aussi des messages d'aide pour décrire l'utilisation à l'utilisateur. Au
- lieu d'utiliser une chaîne de caractère unique comme pour la syntaxe courte, la syntaxe
- longue emploie un tableau associatif comme premier argument du constructeur pour
- déclarer les options.
- </para>
- <para>
- La clé de chaque élément du tableau associatif est une chaîne avec un format qui
- nomme le drapeau, avec tous ses alias, séparés par le symbole "<code>|</code>". Après
- la série des alias, si l'option exige un paramètre, il y a un symbole égal
- ("<code>=</code>") avec une lettre qui représente le <emphasis>type</emphasis> du
- paramètre :
- </para>
- <itemizedlist>
- <listitem>
- <para>"<code>=s</code>" pour un paramètre de type chaîne de caractère.</para>
- </listitem>
- <listitem>
- <para>
- "<code>=w</code>" pour un paramètre de type mot (une chaîne de caractère
- qui ne contient pas d'espace).
- </para>
- </listitem>
- <listitem>
- <para>"<code>=i</code>" pour un paramètre de type entier (integer).</para>
- </listitem>
- </itemizedlist>
- <para>
- Si le paramètre est optionnel, on utilise le tiret ("<code>-</code>") au lieu du
- symbole égal.
- </para>
- <para>
- La valeur de chaque élément dans le tableau associatif est un message d'aide pour
- décrire à l'utilisateur comment employer votre programme.
- </para>
- <example id="zend.console.getopt.rules.long.example">
- <title>Utiliser la syntaxe longue</title>
- <programlisting language="php"><![CDATA[
- $opts = new Zend_Console_Getopt(
- array(
- 'abricot|a' => 'option abricot, sans parametres',
- 'banane|b=i' => 'option banane, avec un parametre entier obligatoire',
- 'pear|p-s' => 'option pear, avec un parametre chaîne optionel'
- )
- );
- ]]></programlisting>
- </example>
- <para>
- Dans l'exemple ci-dessus, il y a trois options. "<code>--abricot</code>" et
- "<code>-a</code>" sont des alias l'un pour l'autre et l'option ne prend pas de
- paramètres. "<code>--banane</code>" et "<code>-b</code>" sont des alias l'un pour
- l'autre et l'option prend un paramètre obligatoire de type entier. Enfin,
- "<code>--pear</code>" et "<code>-p</code>" sont des alias l'un pour l'autre et l'option
- prend un paramètre optionnel de type chaîne de caractère.
- </para>
- </sect2>
- </sect1>
|