Files
doc-fr/reference/strings/functions/addcslashes.xml
George Peter Banyard 0ef4bced05 Apply SVN revision 351904
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@351916 c90b9560-bf6c-de11-be94-00142212c4b1
2020-12-06 00:48:15 +00:00

158 lines
4.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: e095023e408c8cb6378ae16bb6870343a3946919 Maintainer: yannick Status: ready -->
<!-- Reviewed: yes -->
<refentry xml:id="function.addcslashes" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>addcslashes</refname>
<refpurpose>Ajoute des slash dans une chaîne, à la mode du langage C</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>addcslashes</methodname>
<methodparam><type>string</type><parameter>string</parameter></methodparam>
<methodparam><type>string</type><parameter>characters</parameter></methodparam>
</methodsynopsis>
<para>
Retourne la chaîne <parameter>string</parameter>, après avoir ajouté des
antislashs devant tous les caractères qui sont présents
dans la liste <parameter>characters</parameter>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>string</parameter></term>
<listitem>
<para>
La chaîne à échapper.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>characters</parameter></term>
<listitem>
<para>
Une liste de caractères à échapper. Si
<parameter>characters</parameter> contient les caractères
<literal>\n</literal>, <literal>\r</literal> etc., ils seront
convertis à la mode du langage C, alors que les autres
caractères non-alphanumériques ayant un code ASCII inférieur
à 26, et supérieur à 126 sont remplacés par leur représentation
octale.
</para>
<para>
Lorsque vous définissez une séquence de caractères
dans le paramètre <parameter>characters</parameter>, assurez-vous
que vous connaissez bien tous les caractères qui viennent entre
vos limites d'intervalles.
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
echo addcslashes('foo[ ]', 'A..z');
// Affiche : \f\o\o\[ \]
// Toutes les majuscules et minuscules seront échappées
// ... mais aussi les caractères [\]^_`
?>
]]>
</programlisting>
</informalexample>
De plus, si le premier caractère d'un intervalle a un code ASCII
plus grand que le second, l'intervalle ne sera pas créé.
Seules les bornes de l'intervalle et le caractère point (.) seront
échappés. Utilisez la fonction <function>ord</function> pour
trouver la valeur ASCII d'un caractère.
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
echo addcslashes("zoo['.']", 'z..A');
// Affiche : \zoo['\.']
?>
]]>
</programlisting>
</informalexample>
</para>
<para>
Attention à l'utilisation des caractères tels que 0, a, b, f, n, r,
t et v. Ils seront convertis en \0, \a, \b, \f, \n, \r, \t et \v,
tous étant des séquences d'échappement en C. La plupart de ces séquences
sont aussi définies dans d'autres langages dérivés du C, incluant PHP,
ce qui signifie que vous n'obtiendrez pas le résultat attendu si vous
utilisez la sortie de la fonction <function>addcslashes</function>
pour générer du code pour ces langages avec les caractères définis
dans le paramètre <parameter>characters</parameter>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Retourne la chaîne, échappée.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<parameter>characters</parameter> peut s'écrire "\0..\37", ce qui
identifie tous les caractères ASCII dont le code est entre
0 et 37.
<example>
<title>Exemple avec <function>addcslashes</function></title>
<programlisting role="php">
<![CDATA[
<?php
$escaped = addcslashes($not_escaped, "\0..\37!@\177..\377");
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>stripcslashes</function></member>
<member><function>stripslashes</function></member>
<member><function>addslashes</function></member>
<member><function>htmlspecialchars</function></member>
<member><function>quotemeta</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->