1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-24 15:32:36 +01:00
Files
archived-doc-es/reference/array/functions/array-replace-recursive.xml
2025-05-06 21:45:14 +02:00

190 lines
5.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 0e6f9948fe9e5412cc5f31d0a30bcde30f9ee404 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes -->
<refentry xml:id="function.array-replace-recursive" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>array_replace_recursive</refname>
<refpurpose>Sustituye recursivamente en el primer array los elementos de los otros arrays proporcionados</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> sustituye los valores del array
<parameter>array</parameter> con los valores de las mismas claves provenientes de los
arrays siguientes. Si una clave del primer array existe en uno de los
arrays siguientes, su valor será sustituido. Si la clave no existe
en el primer array, será creada. Si la clave solo existe en
el primer array, será dejada intacta. Si varios arrays
son pasados como argumentos de sustitución, serán tratados en orden.
</para>
<para>
<function>array_replace_recursive</function> es recursiva: si un valor es
un array, la misma función de sustitución le será aplicada.
</para>
<para>
Si el valor en el primer array es escalar, será sustituido
por el valor del segundo array, ya sea un escalar o un
array. Si los valores del primer y segundo array
son ambos arrays, <function>array_replace_recursive</function> sustituirá
los valores recursivamente.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>array</parameter></term>
<listitem>
<para>
El array en el cual los elementos son sustituidos.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>replacements</parameter></term>
<listitem>
<para>
Arrays desde los cuales los elementos
pueden ser extraídos.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un &array;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo con <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>Ejemplo con <function>array_replace_recursive</function> y la recursividad</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
-->