1
0
mirror of https://github.com/php/doc-fr.git synced 2026-03-24 15:12:13 +01:00
Files
archived-doc-fr/reference/mbstring/overloading.xml
Jean-Baptiste Nahan 433b7d0ec7 Corrections diverses
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@343525 c90b9560-bf6c-de11-be94-00142212c4b1
2017-11-29 22:42:41 +00:00

177 lines
5.6 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 028513e94be0922956387803e75b575973539254 Maintainer: yannick Status: ready -->
<!-- Reviewed: yes -->
<chapter xml:id="mbstring.overload" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>
Exploitation des chaînes multi-octets en PHP
</title>
<para>
&warn.deprecated.feature-7-2-0;
</para>
<para>
Vous pourriez trouver difficile de faire fonctionner une application PHP
existante dans un environnement multi-octets. Ceci est dû au fait
que la plupart des applications PHP sont écrites avec des fonctions
de chaînes de caractères standards comme la fonction
<function>substr</function>, qui est connue pour ne pas gérer
proprement les chaînes multi-octets.
</para>
<para>
Mbstring supporte aussi la surcharge de fonctions, pour
permettre le support des chaînes multi-octets sans modifier les
scripts PHP. En utilisant ce système de surcharge de fonctions,
certaines fonctions PHP seront remplacées par leur équivalent
de mbstring. Par exemple <function>mb_substr</function> remplacera
<function>substr</function>. Ce système de remplacement transparent,
permet un portage simple et efficace des applications.
</para>
<para>
Pour utiliser la surcharge de fonctions, définissez
<literal>mbstring.func_overload</literal>, dans le &php.ini;,
à une valeur positive qui représente une combinaison de masques d'octets
spécifiant les catégories de fonctions à surcharger. Il doit être défini à
1 pour surcharger la fonction <function>mail</function>, 2 pour les
fonctions de chaînes, 4 pour les fonctions d'expression rationnelles.
Par exemple, avec la valeur 7, toutes les fonctions précédentes seront
surchargées. Voici la liste complète des fonctions surchargées, avec
leur fonction de remplacement.
<table>
<title>Fonctions de remplacement</title>
<tgroup cols="3">
<thead>
<row>
<entry>Valeur de mbstring.func_overload</entry>
<entry>Fonction originale</entry>
<entry>Fonction de remplacement</entry>
</row>
</thead>
<tbody>
<row>
<entry>1</entry>
<entry><function>mail</function></entry>
<entry><function>mb_send_mail</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>strlen</function></entry>
<entry><function>mb_strlen</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>strpos</function></entry>
<entry><function>mb_strpos</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>strrpos</function></entry>
<entry><function>mb_strrpos</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>substr</function></entry>
<entry><function>mb_substr</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>strtolower</function></entry>
<entry><function>mb_strtolower</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>strtoupper</function></entry>
<entry><function>mb_strtoupper</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>stripos</function></entry>
<entry><function>mb_stripos</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>strripos</function></entry>
<entry><function>mb_strripos</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>strstr</function></entry>
<entry><function>mb_strstr</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>stristr</function></entry>
<entry><function>mb_stristr</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>strrchr</function></entry>
<entry><function>mb_strrchr</function></entry>
</row>
<row>
<entry>2</entry>
<entry><function>substr_count</function></entry>
<entry><function>mb_substr_count</function></entry>
</row>
<row>
<entry>4</entry>
<entry><function>ereg</function></entry>
<entry><function>mb_ereg</function></entry>
</row>
<row>
<entry>4</entry>
<entry><function>eregi</function></entry>
<entry><function>mb_eregi</function></entry>
</row>
<row>
<entry>4</entry>
<entry><function>ereg_replace</function></entry>
<entry><function>mb_ereg_replace</function></entry>
</row>
<row>
<entry>4</entry>
<entry><function>eregi_replace</function></entry>
<entry><function>mb_eregi_replace</function></entry>
</row>
<row>
<entry>4</entry>
<entry><function>split</function></entry>
<entry><function>mb_split</function></entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<note>
<para>
Il n'est pas recommandé d'utiliser le remplacement des fonctions mbstring
dans un contexte de <literal>per-directory</literal>, car il n'est pas
confirmé encore qu'elles sont suffisamment stables dans un environnement
de production et peuvent conduire à des résultats incohérents.
</para>
</note>
</chapter>
<!-- 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
-->