cvs: phpdoc /fr/functions funchand.xml
| From: | Damien Seguy | Date: | Thu, 23 Nov 2000 14:45:06 +0000 |
| Subject: | cvs: phpdoc /fr/functions funchand.xml | ||
| Groups: | php.doc | ||
| Request: | Send a blank email to phpdoc+get-969333049@lists.php.net to get a copy of this message | ||
dams Thu Nov 23 06:45:06 2000 EDT
Modified files:
/phpdoc/fr/functions funchand.xml
Log:
Added missing functions.
Index: phpdoc/fr/functions/funchand.xml diff -u phpdoc/fr/functions/funchand.xml:1.1 phpdoc/fr/functions/funchand.xml:1.2 --- phpdoc/fr/functions/funchand.xml:1.1 Mon Oct 16 05:46:48 2000 +++ phpdoc/fr/functions/funchand.xml Thu Nov 23 06:45:06 2000 @@ -1,11 +1,11 @@ <reference id="ref.funchand"> - <title>Function Handling functions</title> - <titleabbrev>Functions</titleabbrev> + <title>Fonctions de fonctions</title> + <titleabbrev>Fonctions</titleabbrev> <partintro> <para> - These functions all handle various operations involved in working - with functions. + Ces fonctions effectuent les manipulations liées à + la gestion des fonctions. </para> </partintro> @@ -13,7 +13,7 @@ <refnamediv> <refname>call_user_func</refname> <refpurpose> - Call a user function given by the first parameter + Appelle une fonction utilisateur </refpurpose> </refnamediv> <refsect1> @@ -35,26 +35,26 @@ </funcprototype> </funcsynopsis> <para> - Call a user defined function given by the - <parameter>function_name</parameter> parameter. Take the - following: + Appelle la fonction utilisateur <parameter>function_name</parameter>, et lui + passe les paramètres <parameter><optional>parameter</optional></parameter>. + Par exemple : <informalexample> <programlisting role="php"> -function barber ($type) { - print "You wanted a $type haircut, no problem"; +function barbier ($type) { + print "Vous vouliez une coupe $type, pas de problème"; } -call_user_func ('barber', "mushroom"); -call_user_func ('barber', "shave"); +call_user_func ('barbier', "iroquois"); +call_user_func ('barbier', "militaire"); +call_user_func ('barbier', "au bol"); </programlisting> </informalexample> </para> </refsect1> </refentry> - <refentry id="function.create-function"> <refnamediv> <refname>create_function</refname> - <refpurpose>Create an anonymous (lambda-style) function</refpurpose> + <refpurpose>Crée une fonction anonyme (style lambda)</refpurpose> </refnamediv> <refsect1> <title>Description</title> @@ -66,37 +66,39 @@ </funcprototype> </funcsynopsis> <para> - Creates an anonymous function from the parameters passed, and - returns a unique name for it. Usually the - <parameter>args</parameter> will be passed as a single quote - delimited string, and this is also recommended for the - <parameter>code</parameter>. The reason for using single quoted - strings, is to protect - the variable names from parsing, otherwise, if you use double - quotes there will be a need to escape the variable names, e.g. - <literal>\$avar</literal>. + Cette fonction crée une fonction anonyme, à partir des + paramètres passés, et retourne un nom unique. + Généralement, les arguments + <parameter>args</parameter> sont présentés sous + la forme d'une chaîne à guillemets simples, et la + même recommandation vaut pour <parameter>code</parameter>. + La raison de l'utilisation des guillemets simples est de proteger + les noms de variables du remplacement par leur valeur. Si vous utilisez + les guillemets doubles, n'oubliez pas d'échapper les noms + de variables (i.e. <literal>\$avar</literal>). </para> <para> - You can use this function, to (for example) create a function - from information gathered at run time: + Vous pouvez utiliser cette fonction pour (par exemple) créer + une fonction à partir d'informations récoltés + durant l'éxécution. <example> <title> - Creating an anonymous function with <function>create_function</function> + Creation d'une fonction anonmye avec <function>create_function</function> </title> <programlisting role="php"> $newfunc = create_function('$a,$b','return "ln($a) + ln($b) = ".log($a * $b);'); -echo "New anonymous function: $newfunc\n"; +echo "Nouvelle fonction anonyme : $newfunc\n"; echo $newfunc(2,M_E)."\n"; -// outputs -// New anonymous function: lambda_1 +// affichera : +// Nouvelle fonction anonyme : lambda_1 // ln(2) + ln(2.718281828459) = 1.6931471805599 </programlisting> </example> - Or, perhaps to have general handler function that can apply a set - of operations to a list of parameters: + Ou, pour pouvoir appliquer une fonction générique + à une liste d'arguments. <example> <title> - Making a general processing function with + Traitement générique par fonction avec <function>create_function</function> </title> <programlisting role="php"> @@ -105,298 +107,316 @@ echo $farr[$f]($var1,$var2)."\n"; } -// create a bunch of math functions +// creation d'une série de fonction mathématiques $f1 = 'if ($a >=0) {return "b*a^2 = ".$b*sqrt($a);} else {return false;}'; $f2 = "return \"min(b^2+a, a^2,b) = \".min(\$a*\$a+\$b,\$b*\$b+\$a);"; $f3 = 'if ($a > 0 && $b != 0) {return "ln(a)/b = ".log($a)/$b;} else {return false;}'; $farr = array( - create_function('$x,$y', 'return "some trig: ".(sin($x) + $x*cos($y));'), - create_function('$x,$y', 'return "a hypotenuse: ".sqrt($x*$x + $y*$y);'), + create_function('$x,$y', 'return "un peu de trigo : ".(sin($x) + $x*cos($y));'), + create_function('$x,$y', 'return "une hypoténuse: ".sqrt($x*$x + $y*$y);'), create_function('$a,$b', $f1), create_function('$a,$b', $f2), create_function('$a,$b', $f3) ); -echo "\nUsing the first array of anonymous functions\n"; -echo "parameters: 2.3445, M_PI\n"; +echo "\nUtilisation de la première liste de fonctions anonymes\n"; +echo "paramétres: 2.3445, M_PI\n"; process(2.3445, M_PI, $farr); -// now make a bunch of string processing functions +// Maintenant une liste de fonction sur chaîne de caractères $garr = array( create_function('$b,$a','if (strncmp($a,$b,3) == 0) return "** \"$a\" '. - 'and \"$b\"\n** Look the same to me! (looking at the first 3 chars)";'), + 'et \"$b\"\n** Ces chaînes de ressemblent!! (regarde les trois premiers caractères)";'), create_function('$a,$b','; return "CRCs: ".crc32($a)." , ".crc32(b);'), - create_function('$a,$b','; return "similar(a,b) = ".similar_text($a,$b,&$p)."($p%)";') + create_function('$a,$b','; return "similarité(a,b) = ".similar_text($a,$b,&$p)."($p%)";') ); -echo "\nUsing the second array of anonymous functions\n"; +echo "\nUtilisation de la secondes liste de fonctions anonymes\n"; process("Twas brilling and the slithy toves", "Twas the night", $garr); </programlisting> </example> - and when you run the code above, the output will be: + Et lorsque vous utilisez le code ci dessus, l'affichage va être <informalexample> <programlisting> -Using the first array of anonymous functions -parameters: 2.3445, M_PI -some trig: -1.6291725057799 -a hypotenuse: 3.9199852871011 +Utilisation de la première liste de fonctions anonymes +paramétres: 2.3445, M_PI +Un peu de trigo: -1.6291725057799 +Une hypoténuse: 3.9199852871011 b*a^2 = 4.8103313314525 min(b^2+a, a^2,b) = 8.6382729035898 ln(a/b) = 0.27122299212594 -Using the second array of anonymous functions -** "Twas the night" and "Twas brilling and the slithy toves" -** Look the same to me! (looking at the first 3 chars) +Utilisation de la seconde liste de fonctions anonymes +** "Twas the night" et "Twas brilling and the slithy toves" +** Ces chaînes de ressemblent!! (regarde les trois premiers caractères) CRCs: -725381282 , 1908338681 -similar(a,b) = 11(45.833333333333%) +similarité(a,b) = 11(45.833333333333%) </programlisting> </informalexample> - But perhaps the most common use for of lambda-style (anonymous) functions - is to create callback functions, for example when using - <function>array_walk</function> or <function>usort</function> + Mais l'utilisation la plus courante des fonctions lambda est la + fonction de callback, par exemple lors de l'utilisation de + <function>array_walk</function> ou <function>usort</function> <example> - <title>Using anonymous functions as callback functions</title> + <title>Utilisation de fonctions anonymes comme fonction de callback</title> <programlisting role="php"> -$av = array("the ","a ","that ","this "); -array_walk($av, create_function('&$v,$k','$v = $v."mango";')); -print_r($av); // for PHP 3 use var_dump() -// outputs: +$av = array("la ","une ","cette ","une certaine "); +array_walk($av, create_function('&$v,$k','$v = $v."maison";')); +print_r($av); // En PHP3 utilisez var_dump() +// affiche: // Array // ( -// [0] => the mango -// [1] => a mango -// [2] => that mango -// [3] => this mango +// [0] => la maison +// [1] => une maison +// [2] => cette maison +// [3] => une certaine maison // ) -// an array of strings ordered from shorter to longer -$sv = array("small","larger","a big string","it is a string thing"); +// un tableau de chaîne classé par taille +$sv = array("petite","moyenne","tres longue","vraiment tres longue"); print_r($sv); -// outputs: +// affiche: // Array // ( -// [0] => small -// [1] => larger -// [2] => a big string -// [3] => it is a string thing +// [0] => petite +// [1] => moyenne +// [2] => tres longue +// [3] => vraiment tres longue // ) -// sort it from longer to shorter +// Tri par ordre de taille décroissant usort($sv, create_function('$a,$b','return strlen($b) - strlen($a);')); print_r($sv); // outputs: // Array // ( -// [0] => it is a string thing -// [1] => a big string -// [2] => larger -// [3] => small +// [0] => vraiment tres longue +// [1] => tres longue +// [2] => moyenne +// [3] => petite // ) </programlisting> </example> </para> </refsect1> </refentry> + + <refentry id="function.func-get-arg"> + <refnamediv> + <refname>func_get_arg</refname> + <refpurpose> + Retourne un élément de la liste des arguments + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>mixed <function>func_get_arg</function></funcdef> + <paramdef>int <parameter>arg_num</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Retourne l'argument à la position <parameter>arg_num</parameter> dans + la liste d'argument d'une fonction utilisateur. Les arguments sont + comptés en commencant à zéro. + <function>func_get_arg</function> générera une + alerte si elle est appelée hors d'une fonction. + </simpara> + <simpara> + Si <parameter>arg_num</parameter> est plus grand que le nombre + d'arguments passés, une alerte est générée + et la fonction retourne FALSE. + </simpara> + <para> + <informalexample> + <programlisting role="php"> +<?php +function foo() { + $numargs = func_num_args(); + echo "Nombre d'arguments: $numargs<br>\n"; + if ($numargs >= 2) { + echo "Le second argument est: " . func_get_arg (1) . "<br>\n"; + } +} + +foo (1, 2, 3); +?> + </programlisting> + </informalexample> + </para> + <simpara> + <function>Func_get_arg</function> peut être utilisé + conjointement à <function>func_num_args</function> et + <function>func_get_args</function> pour permettre aux fonctions + utilisateurs d'accepter un nombre variable d'arguments. + </simpara> + <note> + <simpara> + Cette fonction a été ajoutée dans PHP 4. + </simpara> + </note> + </refsect1> + </refentry> - <refentry id="function.func-get-arg"> - <refnamediv> - <refname>func_get_arg</refname> - <refpurpose>Retourne la liste des arguments d'une fonction</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int <function>func_get_arg</function></funcdef> - <paramdef>int <parameter>arg_num</parameter></paramdef> - </funcsynopsis> - <simpara> - Retourne l'argument à la <parameter>arg_num</parameter>-ième position - d'une fonction définie par l'utilisateur. Les positions sont indexées en - commencant à zéro. <function>func_get_arg</function> générera une alerte (warning) - si elle est appelée hors d'une définition de fonction. - </simpara> - <simpara> - Si <parameter>arg_num</parameter> est plus grand que le nombre d'arguments - une alerte sera générée, et <function>func_get_arg</function> retournera FALSE. - </simpara> - <para> - <informalexample> - <programlisting role="php"> -<?php -function foo() { - $numargs = func_num_args(); - echo "Nombre d'arguments: $numargs<br>\n"; - if ($numargs >= 2) { - echo "Deuxième argument : " . func_get_arg (1) . "<br>\n"; - } -} - -foo (1, 2, 3); -?> - </programlisting> - </informalexample> - </para> - <simpara> - <function>func_get_arg</function> peut être utilisé conjointement avec - <function>func_num_args</function> et <function>func_get_args</function> - pour permettre aux fonctions définies par les utilisateurs d'accepter un - nombre variable d'argument. - </simpara> - <note> - <simpara> - Cette fonction a été ajoutée dans PHP 4. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.func-get-args"> - <refnamediv> - <refname>func_get_args</refname> - <refpurpose> - Retourne une tableau contenant la liste des arguments d'une fonction. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int <function>func_get_args</function></funcdef> - <paramdef>void <parameter></parameter></paramdef> - </funcsynopsis> - <simpara> - Retourne un tableau dont les éléments sont les arguments de la fonction courante. - <function>func_get_args</function> générera une alerte (warning) si elle est - appelée hors d'une définition de fonction. - </simpara> - <para> - <informalexample> - <programlisting role="php"> -<?php -function foo() { - $numargs = func_num_args(); - echo "Nombre d'arguments: $numargs<br>\n"; - if ($numargs >= 2) { - echo "Deuxième argument : " . func_get_arg (1) . "<br>\n"; - } - $arg_list = func_get_args(); - for ($i = 0; $i < $numargs; $i++) { - echo "Argument $i : " . $arg_list[$i] . "<br>\n"; - } -} - -foo (1, 2, 3); -?> - </programlisting> - </informalexample> - </para> - <simpara> - <function>func_get_args</function> peut être utilisé conjointement avec - <function>func_num_args</function> et <function>func_get_args</function> - pour permettre aux fonctions définies par les utilisateurs d'accepter - un nombre variable d'argument. - </simpara> - <note> - <simpara> - Cette fonction a été ajoutée dans PHP 4. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.func-num-args"> - <refnamediv> - <refname>func_num_args</refname> - <refpurpose> - Retourne le nombre d'arguments passés à une fonction. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int <function>func_num_args</function></funcdef> - <paramdef>void <parameter></parameter></paramdef> - </funcsynopsis> - <simpara> - Retourne le nombre d'arguments passé à la fonction courante. - <function>func_num_args</function> génèrera une alerte (warning) si elle est - appelée hors d'une définition de fonction. - </simpara> - <para> - <informalexample> - <programlisting role="php"> -<?php -function foo() { - $numargs = func_num_args(); - echo "Nombre d'arguments: $numargs\n"; -} - -foo (1, 2, 3); // affiche : 'Nomber d'arguments: 3' -?> - </programlisting> - </informalexample> - </para> - <simpara> - <function>func_num_args</function> peut être utilisé conjointement avec - <function>func_get_arg</function> et <function>func_get_args</function> - pour permettre aux fonctions définies par les utilisateurs d'accepter - un nombre variable d'arguments. - </simpara> - <note> - <simpara> - Cette fonction a été ajoutée dans PHP 4. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.function-exists"> - <refnamediv> - <refname>function_exists</refname> - <refpurpose> - Retourne TRUE si la fonction a été définie. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int <function>function_exists</function></funcdef> - <paramdef>string <parameter>function_name</parameter></paramdef> - </funcsynopsis> - <simpara> - Vérifie la liste des fonctions définies, et recherche la fonction - <parameter>function_name</parameter>. - Retourne TRUE si cette fonction est trouvée, sinon FALSE. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.register-shutdown-function"> - <refnamediv> - <refname>register_shutdown_function</refname> - <refpurpose> - Enregistre une fonction pour exécution à l'extinction. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int - <function>register_shutdown_function</function> - </funcdef> - <paramdef>string <parameter>func</parameter></paramdef> - </funcsynopsis> - <simpara> - Enregistre la fonction <parameter>func</parameter> pour exécution à la fin - du script. - </simpara> - <para> - Erreur commune : - </para> - <simpara> - Etant donné qu'aucun affichage n'est autorisé depuis cette fonction, - vous ne pourrez pas débugger en utilisant print ou echo dans cette fonction. - </simpara> - </refsect1> - </refentry> + <refentry id="function.func-get-args"> + <refnamediv> + <refname>func_get_args</refname> + <refpurpose> + Retourne les arguments d'une fonction sous forme de tableau + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>array <function>func_get_args</function></funcdef> + <paramdef>void <parameter></parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Retourne un tableau dont les éléments correspondent + aux éléments de la liste d'arguments de la fonction. + <function>Func_get_args</function> générera une + alerte si elle est appelée hors d'une fonction. + </simpara> + <para> + <informalexample> + <programlisting role="php"> +<?php +function foo() { + $numargs = func_num_args(); + echo "Nombre d'arguments: $numargs<br>\n"; + if ($numargs >= 2) { + echo "Le second argument est: " . func_get_arg (1) . "<br>\n"; + } + $arg_list = func_get_args(); + for ($i = 0; $i < $numargs; $i++) { + echo "L'argument $i est: " . $arg_list[$i] . "<br>\n"; + } +} + +foo (1, 2, 3); +?> + </programlisting> + </informalexample> + </para> + <simpara> + <function>Func_get_arg</function> peut être utilisé + conjointement à <function>func_num_args</function> et + <function>func_get_args</function> pour permettre aux fonctions + utilisateurs d'accepter un nombre variable d'arguments. + </simpara> + <note> + <simpara> + Cette fonction a été ajoutée dans PHP 4. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.func-num-args"> + <refnamediv> + <refname>func_num_args</refname> + <refpurpose> + Retourne le nombre d'arguments passé à la fonction + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>func_num_args</function></funcdef> + <paramdef>void <parameter></parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Retourne le nombre d'arguments passé à la fonction + utilisateur courante. <function>Func_num_args</function> + générera une alerte si elle est appelée + hors d'une fonction. + </simpara> + <para> + <informalexample> + <programlisting role="php"> +<?php +function foo() { + $numargs = func_num_args(); + echo "Nombre d'arguments: $numargs\n"; +} + +foo (1, 2, 3); // affiche 'Nombre d'arguments: 3' +?> + </programlisting> + </informalexample> + </para> + <simpara> + <function>Func_get_arg</function> peut être utilisé + conjointement à <function>func_num_args</function> et + <function>func_get_args</function> pour permettre aux fonctions + utilisateurs d'accepter un nombre variable d'arguments. + </simpara> + <note> + <simpara> + Cette fonction a été ajoutée dans PHP 4. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.function-exists"> + <refnamediv> + <refname>function_exists</refname> + <refpurpose> + Retourne true si la fonction a déjà été + définie. + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>function_exists</function></funcdef> + <paramdef>string <parameter>function_name</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Vérifie la liste des fonctions définies par + l'utilisateur, et retourne TRUE si <parameter>function_name</parameter> + y est trouvé, FALSE sinon. + </simpara> + </refsect1> + </refentry> + + <refentry id="function.register-shutdown-function"> + <refnamediv> + <refname>register_shutdown_function</refname> + <refpurpose> + Enregistre une fonction pour exécution à l'extinction + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>int + <function>register_shutdown_function</function> + </funcdef> + <paramdef>string <parameter>func</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Enregistre la fonction <parameter>func</parameter> pour + exécution à l'extinction du script. + </simpara> + <para> + Erreur courante : + </para> + <simpara> + Etant donné qu'aucuna affichage n'est possible depuis cette fonction, + vous ne pouvez pas mettre d'informations de débuggage par print + ou echo ici! + </simpara> + </refsect1> + </refentry> </reference>
Index: phpdoc/fr/functions/funchand.xml diff -u phpdoc/fr/functions/funchand.xml:1.1 phpdoc/fr/functions/funchand.xml:1.2 --- phpdoc/fr/functions/funchand.xml:1.1 Mon Oct 16 05:46:48 2000 +++ phpdoc/fr/functions/funchand.xml Thu Nov 23 06:45:06 2000 @@ -1,11 +1,11 @@ <reference id="ref.funchand"> - <title>Function Handling functions</title> - <titleabbrev>Functions</titleabbrev> + <title>Fonctions de fonctions</title> + <titleabbrev>Fonctions</titleabbrev> <partintro> <para> - These functions all handle various operations involved in working - with functions. + Ces fonctions effectuent les manipulations liées à + la gestion des fonctions. </para> </partintro> @@ -13,7 +13,7 @@ <refnamediv> <refname>call_user_func</refname> <refpurpose> - Call a user function given by the first parameter + Appelle une fonction utilisateur </refpurpose> </refnamediv> <refsect1> @@ -35,26 +35,26 @@ </funcprototype> </funcsynopsis> <para> - Call a user defined function given by the - <parameter>function_name</parameter> parameter. Take the - following: + Appelle la fonction utilisateur <parameter>function_name</parameter>, et lui + passe les paramètres <parameter><optional>parameter</optional></parameter>. + Par exemple : <informalexample> <programlisting role="php"> -function barber ($type) { - print "You wanted a $type haircut, no problem"; +function barbier ($type) { + print "Vous vouliez une coupe $type, pas de problème"; } -call_user_func ('barber', "mushroom"); -call_user_func ('barber', "shave"); +call_user_func ('barbier', "iroquois"); +call_user_func ('barbier', "militaire"); +call_user_func ('barbier', "au bol"); </programlisting> </informalexample> </para> </refsect1> </refentry> - <refentry id="function.create-function"> <refnamediv> <refname>create_function</refname> - <refpurpose>Create an anonymous (lambda-style) function</refpurpose> + <refpurpose>Crée une fonction anonyme (style lambda)</refpurpose> </refnamediv> <refsect1> <title>Description</title> @@ -66,37 +66,39 @@ </funcprototype> </funcsynopsis> <para> - Creates an anonymous function from the parameters passed, and - returns a unique name for it. Usually the - <parameter>args</parameter> will be passed as a single quote - delimited string, and this is also recommended for the - <parameter>code</parameter>. The reason for using single quoted - strings, is to protect - the variable names from parsing, otherwise, if you use double - quotes there will be a need to escape the variable names, e.g. - <literal>\$avar</literal>. + Cette fonction crée une fonction anonyme, à partir des + paramètres passés, et retourne un nom unique. + Généralement, les arguments + <parameter>args</parameter> sont présentés sous + la forme d'une chaîne à guillemets simples, et la + même recommandation vaut pour <parameter>code</parameter>. + La raison de l'utilisation des guillemets simples est de proteger + les noms de variables du remplacement par leur valeur. Si vous utilisez + les guillemets doubles, n'oubliez pas d'échapper les noms + de variables (i.e. <literal>\$avar</literal>). </para> <para> - You can use this function, to (for example) create a function - from information gathered at run time: + Vous pouvez utiliser cette fonction pour (par exemple) créer + une fonction à partir d'informations récoltés + durant l'éxécution. <example> <title> - Creating an anonymous function with <function>create_function</function> + Creation d'une fonction anonmye avec <function>create_function</function> </title> <programlisting role="php"> $newfunc = create_function('$a,$b','return "ln($a) + ln($b) = ".log($a * $b);'); -echo "New anonymous function: $newfunc\n"; +echo "Nouvelle fonction anonyme : $newfunc\n"; echo $newfunc(2,M_E)."\n"; -// outputs -// New anonymous function: lambda_1 +// affichera : +// Nouvelle fonction anonyme : lambda_1 // ln(2) + ln(2.718281828459) = 1.6931471805599 </programlisting> </example> - Or, perhaps to have general handler function that can apply a set - of operations to a list of parameters: + Ou, pour pouvoir appliquer une fonction générique + à une liste d'arguments. <example> <title> - Making a general processing function with + Traitement générique par fonction avec <function>create_function</function> </title> <programlisting role="php"> @@ -105,298 +107,316 @@ echo $farr[$f]($var1,$var2)."\n"; } -// create a bunch of math functions +// creation d'une série de fonction mathématiques $f1 = 'if ($a >=0) {return "b*a^2 = ".$b*sqrt($a);} else {return false;}'; $f2 = "return \"min(b^2+a, a^2,b) = \".min(\$a*\$a+\$b,\$b*\$b+\$a);"; $f3 = 'if ($a > 0 && $b != 0) {return "ln(a)/b = ".log($a)/$b;} else {return false;}'; $farr = array( - create_function('$x,$y', 'return "some trig: ".(sin($x) + $x*cos($y));'), - create_function('$x,$y', 'return "a hypotenuse: ".sqrt($x*$x + $y*$y);'), + create_function('$x,$y', 'return "un peu de trigo : ".(sin($x) + $x*cos($y));'), + create_function('$x,$y', 'return "une hypoténuse: ".sqrt($x*$x + $y*$y);'), create_function('$a,$b', $f1), create_function('$a,$b', $f2), create_function('$a,$b', $f3) ); -echo "\nUsing the first array of anonymous functions\n"; -echo "parameters: 2.3445, M_PI\n"; +echo "\nUtilisation de la première liste de fonctions anonymes\n"; +echo "paramétres: 2.3445, M_PI\n"; process(2.3445, M_PI, $farr); -// now make a bunch of string processing functions +// Maintenant une liste de fonction sur chaîne de caractères $garr = array( create_function('$b,$a','if (strncmp($a,$b,3) == 0) return "** \"$a\" '. - 'and \"$b\"\n** Look the same to me! (looking at the first 3 chars)";'), + 'et \"$b\"\n** Ces chaînes de ressemblent!! (regarde les trois premiers caractères)";'), create_function('$a,$b','; return "CRCs: ".crc32($a)." , ".crc32(b);'), - create_function('$a,$b','; return "similar(a,b) = ".similar_text($a,$b,&$p)."($p%)";') + create_function('$a,$b','; return "similarité(a,b) = ".similar_text($a,$b,&$p)."($p%)";') ); -echo "\nUsing the second array of anonymous functions\n"; +echo "\nUtilisation de la secondes liste de fonctions anonymes\n"; process("Twas brilling and the slithy toves", "Twas the night", $garr); </programlisting> </example> - and when you run the code above, the output will be: + Et lorsque vous utilisez le code ci dessus, l'affichage va être <informalexample> <programlisting> -Using the first array of anonymous functions -parameters: 2.3445, M_PI -some trig: -1.6291725057799 -a hypotenuse: 3.9199852871011 +Utilisation de la première liste de fonctions anonymes +paramétres: 2.3445, M_PI +Un peu de trigo: -1.6291725057799 +Une hypoténuse: 3.9199852871011 b*a^2 = 4.8103313314525 min(b^2+a, a^2,b) = 8.6382729035898 ln(a/b) = 0.27122299212594 -Using the second array of anonymous functions -** "Twas the night" and "Twas brilling and the slithy toves" -** Look the same to me! (looking at the first 3 chars) +Utilisation de la seconde liste de fonctions anonymes +** "Twas the night" et "Twas brilling and the slithy toves" +** Ces chaînes de ressemblent!! (regarde les trois premiers caractères) CRCs: -725381282 , 1908338681 -similar(a,b) = 11(45.833333333333%) +similarité(a,b) = 11(45.833333333333%) </programlisting> </informalexample> - But perhaps the most common use for of lambda-style (anonymous) functions - is to create callback functions, for example when using - <function>array_walk</function> or <function>usort</function> + Mais l'utilisation la plus courante des fonctions lambda est la + fonction de callback, par exemple lors de l'utilisation de + <function>array_walk</function> ou <function>usort</function> <example> - <title>Using anonymous functions as callback functions</title> + <title>Utilisation de fonctions anonymes comme fonction de callback</title> <programlisting role="php"> -$av = array("the ","a ","that ","this "); -array_walk($av, create_function('&$v,$k','$v = $v."mango";')); -print_r($av); // for PHP 3 use var_dump() -// outputs: +$av = array("la ","une ","cette ","une certaine "); +array_walk($av, create_function('&$v,$k','$v = $v."maison";')); +print_r($av); // En PHP3 utilisez var_dump() +// affiche: // Array // ( -// [0] => the mango -// [1] => a mango -// [2] => that mango -// [3] => this mango +// [0] => la maison +// [1] => une maison +// [2] => cette maison +// [3] => une certaine maison // ) -// an array of strings ordered from shorter to longer -$sv = array("small","larger","a big string","it is a string thing"); +// un tableau de chaîne classé par taille +$sv = array("petite","moyenne","tres longue","vraiment tres longue"); print_r($sv); -// outputs: +// affiche: // Array // ( -// [0] => small -// [1] => larger -// [2] => a big string -// [3] => it is a string thing +// [0] => petite +// [1] => moyenne +// [2] => tres longue +// [3] => vraiment tres longue // ) -// sort it from longer to shorter +// Tri par ordre de taille décroissant usort($sv, create_function('$a,$b','return strlen($b) - strlen($a);')); print_r($sv); // outputs: // Array // ( -// [0] => it is a string thing -// [1] => a big string -// [2] => larger -// [3] => small +// [0] => vraiment tres longue +// [1] => tres longue +// [2] => moyenne +// [3] => petite // ) </programlisting> </example> </para> </refsect1> </refentry> + + <refentry id="function.func-get-arg"> + <refnamediv> + <refname>func_get_arg</refname> + <refpurpose> + Retourne un élément de la liste des arguments + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>mixed <function>func_get_arg</function></funcdef> + <paramdef>int <parameter>arg_num</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Retourne l'argument à la position <parameter>arg_num</parameter> dans + la liste d'argument d'une fonction utilisateur. Les arguments sont + comptés en commencant à zéro. + <function>func_get_arg</function> générera une + alerte si elle est appelée hors d'une fonction. + </simpara> + <simpara> + Si <parameter>arg_num</parameter> est plus grand que le nombre + d'arguments passés, une alerte est générée + et la fonction retourne FALSE. + </simpara> + <para> + <informalexample> + <programlisting role="php"> +<?php +function foo() { + $numargs = func_num_args(); + echo "Nombre d'arguments: $numargs<br>\n"; + if ($numargs >= 2) { + echo "Le second argument est: " . func_get_arg (1) . "<br>\n"; + } +} + +foo (1, 2, 3); +?> + </programlisting> + </informalexample> + </para> + <simpara> + <function>Func_get_arg</function> peut être utilisé + conjointement à <function>func_num_args</function> et + <function>func_get_args</function> pour permettre aux fonctions + utilisateurs d'accepter un nombre variable d'arguments. + </simpara> + <note> + <simpara> + Cette fonction a été ajoutée dans PHP 4. + </simpara> + </note> + </refsect1> + </refentry> - <refentry id="function.func-get-arg"> - <refnamediv> - <refname>func_get_arg</refname> - <refpurpose>Retourne la liste des arguments d'une fonction</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int <function>func_get_arg</function></funcdef> - <paramdef>int <parameter>arg_num</parameter></paramdef> - </funcsynopsis> - <simpara> - Retourne l'argument à la <parameter>arg_num</parameter>-ième position - d'une fonction définie par l'utilisateur. Les positions sont indexées en - commencant à zéro. <function>func_get_arg</function> générera une alerte (warning) - si elle est appelée hors d'une définition de fonction. - </simpara> - <simpara> - Si <parameter>arg_num</parameter> est plus grand que le nombre d'arguments - une alerte sera générée, et <function>func_get_arg</function> retournera FALSE. - </simpara> - <para> - <informalexample> - <programlisting role="php"> -<?php -function foo() { - $numargs = func_num_args(); - echo "Nombre d'arguments: $numargs<br>\n"; - if ($numargs >= 2) { - echo "Deuxième argument : " . func_get_arg (1) . "<br>\n"; - } -} - -foo (1, 2, 3); -?> - </programlisting> - </informalexample> - </para> - <simpara> - <function>func_get_arg</function> peut être utilisé conjointement avec - <function>func_num_args</function> et <function>func_get_args</function> - pour permettre aux fonctions définies par les utilisateurs d'accepter un - nombre variable d'argument. - </simpara> - <note> - <simpara> - Cette fonction a été ajoutée dans PHP 4. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.func-get-args"> - <refnamediv> - <refname>func_get_args</refname> - <refpurpose> - Retourne une tableau contenant la liste des arguments d'une fonction. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int <function>func_get_args</function></funcdef> - <paramdef>void <parameter></parameter></paramdef> - </funcsynopsis> - <simpara> - Retourne un tableau dont les éléments sont les arguments de la fonction courante. - <function>func_get_args</function> générera une alerte (warning) si elle est - appelée hors d'une définition de fonction. - </simpara> - <para> - <informalexample> - <programlisting role="php"> -<?php -function foo() { - $numargs = func_num_args(); - echo "Nombre d'arguments: $numargs<br>\n"; - if ($numargs >= 2) { - echo "Deuxième argument : " . func_get_arg (1) . "<br>\n"; - } - $arg_list = func_get_args(); - for ($i = 0; $i < $numargs; $i++) { - echo "Argument $i : " . $arg_list[$i] . "<br>\n"; - } -} - -foo (1, 2, 3); -?> - </programlisting> - </informalexample> - </para> - <simpara> - <function>func_get_args</function> peut être utilisé conjointement avec - <function>func_num_args</function> et <function>func_get_args</function> - pour permettre aux fonctions définies par les utilisateurs d'accepter - un nombre variable d'argument. - </simpara> - <note> - <simpara> - Cette fonction a été ajoutée dans PHP 4. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.func-num-args"> - <refnamediv> - <refname>func_num_args</refname> - <refpurpose> - Retourne le nombre d'arguments passés à une fonction. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int <function>func_num_args</function></funcdef> - <paramdef>void <parameter></parameter></paramdef> - </funcsynopsis> - <simpara> - Retourne le nombre d'arguments passé à la fonction courante. - <function>func_num_args</function> génèrera une alerte (warning) si elle est - appelée hors d'une définition de fonction. - </simpara> - <para> - <informalexample> - <programlisting role="php"> -<?php -function foo() { - $numargs = func_num_args(); - echo "Nombre d'arguments: $numargs\n"; -} - -foo (1, 2, 3); // affiche : 'Nomber d'arguments: 3' -?> - </programlisting> - </informalexample> - </para> - <simpara> - <function>func_num_args</function> peut être utilisé conjointement avec - <function>func_get_arg</function> et <function>func_get_args</function> - pour permettre aux fonctions définies par les utilisateurs d'accepter - un nombre variable d'arguments. - </simpara> - <note> - <simpara> - Cette fonction a été ajoutée dans PHP 4. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.function-exists"> - <refnamediv> - <refname>function_exists</refname> - <refpurpose> - Retourne TRUE si la fonction a été définie. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int <function>function_exists</function></funcdef> - <paramdef>string <parameter>function_name</parameter></paramdef> - </funcsynopsis> - <simpara> - Vérifie la liste des fonctions définies, et recherche la fonction - <parameter>function_name</parameter>. - Retourne TRUE si cette fonction est trouvée, sinon FALSE. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.register-shutdown-function"> - <refnamediv> - <refname>register_shutdown_function</refname> - <refpurpose> - Enregistre une fonction pour exécution à l'extinction. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcdef>int - <function>register_shutdown_function</function> - </funcdef> - <paramdef>string <parameter>func</parameter></paramdef> - </funcsynopsis> - <simpara> - Enregistre la fonction <parameter>func</parameter> pour exécution à la fin - du script. - </simpara> - <para> - Erreur commune : - </para> - <simpara> - Etant donné qu'aucun affichage n'est autorisé depuis cette fonction, - vous ne pourrez pas débugger en utilisant print ou echo dans cette fonction. - </simpara> - </refsect1> - </refentry> + <refentry id="function.func-get-args"> + <refnamediv> + <refname>func_get_args</refname> + <refpurpose> + Retourne les arguments d'une fonction sous forme de tableau + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>array <function>func_get_args</function></funcdef> + <paramdef>void <parameter></parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Retourne un tableau dont les éléments correspondent + aux éléments de la liste d'arguments de la fonction. + <function>Func_get_args</function> générera une + alerte si elle est appelée hors d'une fonction. + </simpara> + <para> + <informalexample> + <programlisting role="php"> +<?php +function foo() { + $numargs = func_num_args(); + echo "Nombre d'arguments: $numargs<br>\n"; + if ($numargs >= 2) { + echo "Le second argument est: " . func_get_arg (1) . "<br>\n"; + } + $arg_list = func_get_args(); + for ($i = 0; $i < $numargs; $i++) { + echo "L'argument $i est: " . $arg_list[$i] . "<br>\n"; + } +} + +foo (1, 2, 3); +?> + </programlisting> + </informalexample> + </para> + <simpara> + <function>Func_get_arg</function> peut être utilisé + conjointement à <function>func_num_args</function> et + <function>func_get_args</function> pour permettre aux fonctions + utilisateurs d'accepter un nombre variable d'arguments. + </simpara> + <note> + <simpara> + Cette fonction a été ajoutée dans PHP 4. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.func-num-args"> + <refnamediv> + <refname>func_num_args</refname> + <refpurpose> + Retourne le nombre d'arguments passé à la fonction + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>func_num_args</function></funcdef> + <paramdef>void <parameter></parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Retourne le nombre d'arguments passé à la fonction + utilisateur courante. <function>Func_num_args</function> + générera une alerte si elle est appelée + hors d'une fonction. + </simpara> + <para> + <informalexample> + <programlisting role="php"> +<?php +function foo() { + $numargs = func_num_args(); + echo "Nombre d'arguments: $numargs\n"; +} + +foo (1, 2, 3); // affiche 'Nombre d'arguments: 3' +?> + </programlisting> + </informalexample> + </para> + <simpara> + <function>Func_get_arg</function> peut être utilisé + conjointement à <function>func_num_args</function> et + <function>func_get_args</function> pour permettre aux fonctions + utilisateurs d'accepter un nombre variable d'arguments. + </simpara> + <note> + <simpara> + Cette fonction a été ajoutée dans PHP 4. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.function-exists"> + <refnamediv> + <refname>function_exists</refname> + <refpurpose> + Retourne true si la fonction a déjà été + définie. + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>function_exists</function></funcdef> + <paramdef>string <parameter>function_name</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Vérifie la liste des fonctions définies par + l'utilisateur, et retourne TRUE si <parameter>function_name</parameter> + y est trouvé, FALSE sinon. + </simpara> + </refsect1> + </refentry> + + <refentry id="function.register-shutdown-function"> + <refnamediv> + <refname>register_shutdown_function</refname> + <refpurpose> + Enregistre une fonction pour exécution à l'extinction + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>int + <function>register_shutdown_function</function> + </funcdef> + <paramdef>string <parameter>func</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Enregistre la fonction <parameter>func</parameter> pour + exécution à l'extinction du script. + </simpara> + <para> + Erreur courante : + </para> + <simpara> + Etant donné qu'aucuna affichage n'est possible depuis cette fonction, + vous ne pouvez pas mettre d'informations de débuggage par print + ou echo ici! + </simpara> + </refsect1> + </refentry> </reference>