dams Fri Jul 13 03:43:22 2001 EDT Modified files: /phpdoc/fr/functions exec.xml Log: Adding new introd
Index: phpdoc/fr/functions/exec.xml diff -u phpdoc/fr/functions/exec.xml:1.5 phpdoc/fr/functions/exec.xml:1.6 --- phpdoc/fr/functions/exec.xml:1.5 Sat Jul 7 18:22:07 2001 +++ phpdoc/fr/functions/exec.xml Fri Jul 13 03:43:21 2001 @@ -1,258 +1,270 @@ - <reference id="ref.exec"> - <title>Exécution de programmes externes</title> - <titleabbrev>Exécution de programmes</titleabbrev> -<refentry id="function.escapeshellarg"> - <refnamediv> - <refname>escapeshellarg</refname> - <refpurpose> - Echappe une chaîne de caractères pour qu'elle soit - utilisée en ligne de commande. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> +<reference id="ref.exec"> + <title>Exécution de programmes externes</title> + <titleabbrev>Exécution de programmes</titleabbrev> + <partintro> + <simpara> + Ces fonctions fournissent la possibilité de passer directement des +commandes + au système, mais aussi de protéger le système des commandes +passées. + Ces fonctions sont complétées par l'opérateur + <link linkend="language.operators.execution">guillemets obliques</link>. + </simpara> + </partintro> + <refentry id="function.escapeshellarg"> + <refnamediv> + <refname>escapeshellarg</refname> + <refpurpose> + Echappe une chaîne de caractères pour qu'elle soit + utilisée en ligne de commande. + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> <funcsynopsis> - <funcprototype> - <funcdef>string <function>escapeshellarg</function></funcdef> - <paramdef>string <parameter>arg</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>escapeshellarg</function> ajoute des guillemets simples - autour des chaînes de caractères, et ajoute des - guillemets puis échappe les guillemets simples de la - chaîne. Cela permet de faire passer directement une - chaîne comme argument shell, tout en assurant un - maximum de sécurité. <function>escapeshellarg</function> - doit être utilisée pour traiter individuellement chacun des arguments - à passer au shell. Les fonctions shell sont - <function>exec</function>, <function>system</function> et - les opérateurs de - <link linkend="language.operators.execution">guillemets obliques</link>. - Une utilisation typique est : - </para> - <para> - <informalexample> - <programlisting role="php"> + <funcprototype> + <funcdef>string <function>escapeshellarg</function></funcdef> + <paramdef>string <parameter>arg</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>escapeshellarg</function> ajoute des guillemets simples + autour des chaînes de caractères, et ajoute des + guillemets puis échappe les guillemets simples de la + chaîne. Cela permet de faire passer directement une + chaîne comme argument shell, tout en assurant un + maximum de sécurité. <function>escapeshellarg</function> + doit être utilisée pour traiter individuellement chacun des arguments + à passer au shell. Les fonctions shell sont + <function>exec</function>, <function>system</function> et + les opérateurs + <link linkend="language.operators.execution">guillemets obliques</link>. + Une utilisation typique est : + </para> + <para> + <informalexample> + <programlisting role="php"> <?php -system("ls ".escapeshellarg($dir)); -?gt; - </programlisting> - </informalexample> - </para> - <para> - Voir aussi - <function>exec</function>, - <function>popen</function>, - <function>system</function> et - les opérateurs <link linkend="language.operators.execution">guillemets obliques</link>. - </para> - </refsect1> - </refentry> - <refentry id="function.escapeshellcmd"> - <refnamediv> - <refname>escapeshellcmd</refname> - <refpurpose>Echappe les méta-caractères Shell.</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>escapeshellcmd</function></funcdef> - <paramdef>string <parameter>command</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>escapeshellcmd</function> échappe tous les - caractères de la chaîne <parameter>command</parameter> - qui pourraient avoir une signification spéciale dans une - commande shell. Cette fonction permet de s'assurer que la commande sera - correctement passée à l'exécuteur de commande shell - <function>exec</function> et <function>system</function>, ou encore - à - <link linkend="language.operators.execution">guillemets obliques</link>. - Généralement, cette fonction est utilisée comme ceci : - </para> - <para> - <informalexample> - <programlisting role="php"> + system("ls ".escapeshellarg($dir)); +?> + </programlisting> + </informalexample> + </para> + <para> + Voir aussi + <function>exec</function>, + <function>popen</function>, + <function>system</function> et + les opérateurs + <link linkend="language.operators.execution">guillemets obliques</link>. + </para> + </refsect1> + </refentry> + <refentry id="function.escapeshellcmd"> + <refnamediv> + <refname>escapeshellcmd</refname> + <refpurpose>Echappe les méta-caractères Shell.</refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>escapeshellcmd</function></funcdef> + <paramdef>string <parameter>command</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>escapeshellcmd</function> échappe tous les + caractères de la chaîne <parameter>command</parameter> + qui pourraient avoir une signification spéciale dans une + commande shell. Cette fonction permet de s'assurer que la commande sera + correctement passée à l'exécuteur de commande shell + <function>exec</function> et <function>system</function>, ou encore + à + <link linkend="language.operators.execution">guillemets obliques</link>. + Généralement, cette fonction est utilisée comme ceci : + </para> + <para> + <informalexample> + <programlisting role="php"> <?php -system(escapeshellcmd($cmd)); -?gt; - </programlisting> - </informalexample> - </para> - <para> - Voir aussi - <function>exec</function>, - <function>popen</function>, - <function>system</function>, et - les opérateurs <link linkend="language.operators.execution">guillemets obliques</link>. - </para> - </refsect1> - </refentry> - <refentry id="function.exec"> - <refnamediv> - <refname>exec</refname> - <refpurpose>Exécute un programme externe.</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>exec</function></funcdef> - <paramdef>string <parameter>command</parameter></paramdef> - <paramdef>string - <parameter><optional>array</optional> - </parameter> - </paramdef> - <paramdef>int - <parameter><optional>return_var</optional></parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>exec</function> éxecute la commande - <parameter>command</parameter>, mais ne renvoie rien comme retour, - hormis la dernière ligne du résultat de la - commande. Pour exécuter une commande et obtenir le - résultat sans aucun traitement, il faut utiliser la - fonction <function>passthru</function>. - </para> - <para> - Si l'argument <parameter>array</parameter> est présent, - alors ce tableau sera rempli par les lignes retournées par - la commande. Il faut noter que si ce tableau contient des - éléments, <function>exec</function> ajoutera - les nouvelles lignes à la fin du tableau. Si vous ne - voulez pars que les nouveaux éléments soient - concaténés, utilisez la fonction - <function>unset</function> avec ce tableau avant - de le passer à <function>exec</function>. - </para> - <para> - Si l'argument <parameter>return_var</parameter> est présent - en plus du tableau <parameter>array</parameter>, alors de statut - de retour d'exécution sera inscrit dans cette variable. - </para> - <para> - Notez que si vous allez fournir des commandes qui proviennent - d'un utilisateur, il est avisé d'utiliser la fonction - <function>escapeshellcmd</function> pour s'assurer que - l'utilisateur n'essaie pas de profiter des caractères - spéciaux pour tromper le système. - </para> - <para> - Voir aussi <function>system</function>, - <function>passthru</function>, <function>popen</function>, - <function>escapeshellcmd</function>, et les <link - linkend="language.operators.execution">opérateur de backtick</link>. - </para> - </refsect1> - </refentry> - <refentry id="function.passthru"> - <refnamediv> - <refname>passthru</refname> - <refpurpose> - Exécute un programme externe et affiche le résultat brut. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>void <function>passthru</function></funcdef> - <paramdef>string <parameter>command</parameter></paramdef> - <paramdef>int - <parameter><optional>return_var</optional></parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <para> - La fonction <function>passthru</function> est similaire - à la fonction <function>exec</function> car les - deux exécutent la commande <parameter>command</parameter>. - Si l'argument <parameter>return_var</parameter> est présent, - le code de statut de réponse UNIX y sera placé. - Cette fonction doit être utilisée de préférence - aux commandes <function>exec</function> ou <function>system</function> - lorsque le résultat attendu est de type binaire, et - doit être passé tel quel à un navigateur. - Une utilisation classique de cette fonction est l'exécution - de l'utilitaire pbmplus qui peut retourner une image. En fixant - le résultat du contenu (content-type) à - "image/gif" puis en appelant pbmplus pour obtenir - une image gif, vous pouvez créer des scripts PHP qui - retourne des images. - </para> - <para> - Voir aussi - <function>exec</function>, - <function>system</function>, - <function>popen</function>, - <function>escapeshellcmd</function>, - et les opérateurs <link linkend="language.operators.execution">guillemets obliques</link>. - </para> - </refsect1> - </refentry> - <refentry id="function.system"> - <refnamediv> - <refname>system</refname> - <refpurpose> - Exécute un programme externe et affiche le résultat. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>system</function></funcdef> - <paramdef>string <parameter>command</parameter></paramdef> - <paramdef>int - <parameter><optional>return_var</optional></parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>system</function> est la version PHP de la fonction C - qui exécute la commande <parameter>command</parameter> et - retourne le résultat. Si une variable est fournie comme - second argument, alors le code de statut de la commande y sera - affecté. - </para> - <para> - Notez que si vous allez fournir des commandes qui proviennent - d'un utilisateur, il est avisé d'utiliser la fonction - <function>escapeshellcmd</function> pour s'assurer que - l'utilisateur n'essaie pas de profiter des caractères - spéciaux pour tromper le système. - </para> - <para> - <function>system</function> essaie automatiquement de vider - les tampons du serveur web après chaque ligne de - résultat PHP, lorsque ce dernier fonctionne comme un module. - </para> - <para> - <function>system</function> retourne la dernière ligne du - retour, en cas de succès, et &false; en - cas d'échec. - </para> - <para> - Si vous devez exécuter une commande et - récupérer tout le résultat sans aucune - intervention, utilisez la fonction <function>passthru</function>. - </para> - <para> - Voir aussi - <function>exec</function>, - <function>passthru</function>, - <function>popen</function>, - <function>escapeshellcmd</function> et - les opérateurs <link linkend="language.operators.execution">guillemets obliques</link>. - </para> - </refsect1> - </refentry> - </reference> + system(escapeshellcmd($cmd)); +?> + </programlisting> + </informalexample> + </para> + <para> + Voir aussi + <function>exec</function>, + <function>popen</function>, + <function>system</function>, et + les opérateurs + <link linkend="language.operators.execution">guillemets obliques</link>. + </para> + </refsect1> + </refentry> + <refentry id="function.exec"> + <refnamediv> + <refname>exec</refname> + <refpurpose>Exécute un programme externe.</refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>exec</function></funcdef> + <paramdef>string <parameter>command</parameter></paramdef> + <paramdef>string + <parameter><optional>array</optional> + </parameter> + </paramdef> + <paramdef>int + <parameter><optional>return_var</optional></parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>exec</function> éxecute la commande + <parameter>command</parameter>, mais ne renvoie rien comme retour, + hormis la dernière ligne du résultat de la + commande. Pour exécuter une commande et obtenir le + résultat sans aucun traitement, il faut utiliser la + fonction <function>passthru</function>. + </para> + <para> + Si l'argument <parameter>array</parameter> est présent, + alors ce tableau sera rempli par les lignes retournées par + la commande. Il faut noter que si ce tableau contient des + éléments, <function>exec</function> ajoutera + les nouvelles lignes à la fin du tableau. Si vous ne + voulez pars que les nouveaux éléments soient + concaténés, utilisez la fonction + <function>unset</function> avec ce tableau avant + de le passer à <function>exec</function>. + </para> + <para> + Si l'argument <parameter>return_var</parameter> est présent + en plus du tableau <parameter>array</parameter>, alors de statut + de retour d'exécution sera inscrit dans cette variable. + </para> + <para> + Notez que si vous allez fournir des commandes qui proviennent + d'un utilisateur, il est avisé d'utiliser la fonction + <function>escapeshellcmd</function> pour s'assurer que + l'utilisateur n'essaie pas de profiter des caractères + spéciaux pour tromper le système. + </para> + <para> + Voir aussi <function>system</function>, + <function>passthru</function>, <function>popen</function>, + <function>escapeshellcmd</function>, et les opérateurs + <link linkend="language.operators.execution">guillemets obliques</link>. + </para> + </refsect1> + </refentry> + <refentry id="function.passthru"> + <refnamediv> + <refname>passthru</refname> + <refpurpose> + Exécute un programme externe et affiche le résultat brut. + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>void <function>passthru</function></funcdef> + <paramdef>string <parameter>command</parameter></paramdef> + <paramdef>int + <parameter><optional>return_var</optional></parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <para> + La fonction <function>passthru</function> est similaire + à la fonction <function>exec</function> car les + deux exécutent la commande <parameter>command</parameter>. + Si l'argument <parameter>return_var</parameter> est présent, + le code de statut de réponse UNIX y sera placé. + Cette fonction doit être utilisée de préférence + aux commandes <function>exec</function> ou <function>system</function> + lorsque le résultat attendu est de type binaire, et + doit être passé tel quel à un navigateur. + Une utilisation classique de cette fonction est l'exécution + de l'utilitaire pbmplus qui peut retourner une image. En fixant + le résultat du contenu (Content-Type) à + "image/gif" puis en appelant pbmplus pour obtenir + une image gif, vous pouvez créer des scripts PHP qui + retourne des images. + </para> + <para> + Voir aussi + <function>exec</function>, + <function>system</function>, + <function>popen</function>, + <function>escapeshellcmd</function>, + et les opérateurs + <link linkend="language.operators.execution">guillemets obliques</link>. + </para> + </refsect1> + </refentry> + <refentry id="function.system"> + <refnamediv> + <refname>system</refname> + <refpurpose> + Exécute un programme externe et affiche le résultat. + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>system</function></funcdef> + <paramdef>string <parameter>command</parameter></paramdef> + <paramdef>int + <parameter><optional>return_var</optional></parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>system</function> est la version PHP de la fonction C + qui exécute la commande <parameter>command</parameter> et + retourne le résultat. Si une variable est fournie comme + second argument, alors le code de statut de la commande y sera + affecté. + </para> + <para> + Notez que si vous allez fournir des commandes qui proviennent + d'un utilisateur, il est avisé d'utiliser la fonction + <function>escapeshellcmd</function> pour s'assurer que + l'utilisateur n'essaie pas de profiter des caractères + spéciaux pour tromper le système. + </para> + <para> + <function>system</function> essaie automatiquement de vider + les tampons du serveur web après chaque ligne de + résultat PHP, lorsque ce dernier fonctionne comme un module. + </para> + <para> + <function>system</function> retourne la dernière ligne du + retour, en cas de succès, et <literal>FALSE</literal> en + cas d'échec. + </para> + <para> + Si vous devez exécuter une commande et + récupérer tout le résultat sans aucune + intervention, utilisez la fonction <function>passthru</function>. + </para> + <para> + Voir aussi + <function>exec</function>, + <function>passthru</function>, + <function>popen</function>, + <function>escapeshellcmd</function> et + les opérateurs + <link linkend="language.operators.execution">guillemets obliques</link>. + </para> + </refsect1> + </refentry> +</reference> <!-- Keep this comment at the end of the file Local variables: mode: sgml