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/array/functions/array-replace-recursive.xml
George Peter Banyard 342815906c Apply SVN revision 351860
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@351882 c90b9560-bf6c-de11-be94-00142212c4b1
2020-12-04 19:13:26 +00:00

190 lines
5.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: cd943f94a013b74df8765ab8e1a620a916a64a85 Maintainer: yannick Status: ready -->
<!-- Reviewed: yes -->
<refentry xml:id="function.array-replace-recursive" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>array_replace_recursive</refname>
<refpurpose>Remplace récursivement dans le premier tableau les éléments des autres tableaux fournis</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>array_replace_recursive</methodname>
<methodparam><type>array</type><parameter>array</parameter></methodparam>
<methodparam rep="repeat"><type>array</type><parameter>replacements</parameter></methodparam>
</methodsynopsis>
<para>
<function>array_replace_recursive</function> remplace les valeurs du tableau
<parameter>array</parameter> avec les valeurs des mêmes clés issues des
tableaux suivants. Si une clé du premier tableau existe dans un des
tableaux suivants, sa valeur sera remplacée. Si la clé n'existe pas
dans le premier tableau, elle sera créée. Si la clé n'existe que dans
le premier tableau, elle sera laissée intacte. Si plusieurs tableaux
sont passés comme arguments de remplacement, ils seront traités dans l'ordre.
</para>
<para>
<function>array_replace_recursive</function> est récursive : si une valeur est
un tableau, la même fonction de remplacement lui sera appliqué.
</para>
<para>
Si la valeur dans le premier tableau est scalaire, elle sera remplacée
par la valeur du second tableau, que ce soit un scalaire ou un
tableau. Si la valeur du premier et second tableau
sont toutes les deux des tableaux, <function>array_replace_recursive</function> remplacera
les valeurs récursivement.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>array</parameter></term>
<listitem>
<para>
Le tableau dans lequel les éléments sont remplacés.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>replacements</parameter></term>
<listitem>
<para>
Tableaux depuis lesquels les éléments
peuvent être extraits.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Retourne un &array; ou &null; si une erreur survient.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Exemple avec <function>array_replace_recursive</function></title>
<programlisting role="php">
<![CDATA[
<?php
$base = array('citrus' => array( "orange") , 'berries' => array("blackberry", "raspberry"), );
$replacements = array('citrus' => array('pineapple'), 'berries' => array('blueberry'));
$basket = array_replace_recursive($base, $replacements);
print_r($basket);
$basket = array_replace($base, $replacements);
print_r($basket);
?>
]]>
</programlisting>
&example.outputs;
<screen role="php">
<![CDATA[
Array
(
[citrus] => Array
(
[0] => pineapple
)
[berries] => Array
(
[0] => blueberry
[1] => raspberry
)
)
Array
(
[citrus] => Array
(
[0] => pineapple
)
[berries] => Array
(
[0] => blueberry
)
)
]]>
</screen>
</example>
<example>
<title>Exemple avec <function>array_replace_recursive</function> et la récursivité</title>
<programlisting role="php">
<![CDATA[
<?php
$base = array('citrus' => array("orange") , 'berries' => array("blackberry", "raspberry"), 'others' => 'banana' );
$replacements = array('citrus' => 'pineapple', 'berries' => array('blueberry'), 'others' => array('litchis'));
$replacements2 = array('citrus' => array('pineapple'), 'berries' => array('blueberry'), 'others' => 'litchis');
$basket = array_replace_recursive($base, $replacements, $replacements2);
print_r($basket);
?>
]]>
</programlisting>
&example.outputs;
<screen role="php">
<![CDATA[
Array
(
[citrus] => Array
(
[0] => pineapple
)
[berries] => Array
(
[0] => blueberry
[1] => raspberry
)
[others] => litchis
)
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>array_replace</function></member>
<member><function>array_merge_recursive</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
-->