1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-27 00:42:10 +01:00
Files
archived-doc-es/reference/strings/functions/str-replace.xml
Pedro Antonio Gil Rodríguez 9c4337cbf2 Correcciones menores de otros usuarios
git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@338573 c90b9560-bf6c-de11-be94-00142212c4b1
2016-02-07 22:18:41 +00:00

221 lines
7.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: afc3f34c682418a582b0f9199db0bac4a087821f Maintainer: seros Status: ready -->
<!-- Reviewed: no -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.str-replace">
<refnamediv>
<refname>str_replace</refname>
<refpurpose>Reemplaza todas las apariciones del string buscado con el string de reemplazo</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>str_replace</methodname>
<methodparam><type>mixed</type><parameter>search</parameter></methodparam>
<methodparam><type>mixed</type><parameter>replace</parameter></methodparam>
<methodparam><type>mixed</type><parameter>subject</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter role="reference">count</parameter></methodparam>
</methodsynopsis>
<para>
Esta función devuelve un string o un array con todas las apariciones de
<parameter>search</parameter> en <parameter>subject</parameter>
reemplazadas con el valor dado de <parameter>replace</parameter>.
</para>
<para>
Si no se necesitan reglas complicadas de reemplazo (como expresiones regulares), se
puede utilizar siempre esta función en lugar de <function>preg_replace</function>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
Si <parameter>search</parameter> y <parameter>replace</parameter> son
arrays, entonces <function>str_replace</function> toma un valor de cada array
y lo utiliza para buscar y reemplazar en <parameter>subject</parameter>. Si
<parameter>replace</parameter> tiene menos valores que
<parameter>search</parameter>, entonces un string vacío es usado para el resto de
los valores de reemplazo. Si <parameter>search</parameter> es un array y
<parameter>replace</parameter> es un string, entonces este string de reemplazo es
usado para cada valor de <parameter>search</parameter>. Sin embargo, lo contrario
no tendría sentido.
</para>
<para>
Si <parameter>search</parameter> o <parameter>replace</parameter>
son arrays, sus elementos son procesados del primero al último.
</para>
<para>
<variablelist>
<varlistentry>
<term><parameter>search</parameter></term>
<listitem>
<para>
El valor a ser buscado, también conocida como la <emphasis>aguja</emphasis>.
Un array puede ser utilizado para designar varias agujas.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>replace</parameter></term>
<listitem>
<para>
El valor de reemplazo que sustituye los valores encontrados de <parameter>search</parameter>.
Un array puede ser utilizado para designar reemplazos múltiples.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>subject</parameter></term>
<listitem>
<para>
El string o array sobre el que se busca y se sustituye,
también conocido como el <emphasis>pajar</emphasis>.
</para>
<para>
Si <parameter>subject</parameter> es un array, entonces la búsqueda y
reemplazo se realiza con cada entrada de
<parameter>subject</parameter> y el valor devuelto también es
un array.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>count</parameter></term>
<listitem>
<para>
Si es pasado, con este se establece el número de reemplazos realizados.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Esta función devuelve un string o un array con los valores sustituidos.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplos básicos de <function>str_replace</function></title>
<programlisting role="php">
<![CDATA[
<?php
// Produce: <body text='black'>
$bodytag = str_replace("%body%", "black", "<body text='%body%'>");
// Produce: Hll Wrld f PHP
$vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
// Produce: You should eat pizza, beer, and ice cream every day
$phrase = "You should eat fruits, vegetables, and fiber every day.";
$healthy = array("fruits", "vegetables", "fiber");
$yummy = array("pizza", "beer", "ice cream");
$newphrase = str_replace($healthy, $yummy, $phrase);
// Produce: 2
$str = str_replace("ll", "", "good golly miss molly!", $count);
echo $count;
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Ejemplos de trampas potenciales con <function>str_replace</function></title>
<programlisting role="php">
<![CDATA[
<?php
// Orden del reemplazo
$str = "Line 1\nLine 2\rLine 3\r\nLine 4\n";
$order = array("\r\n", "\n", "\r");
$replace = '<br />';
// Procesa primero \r\n así no es convertido dos veces.
$newstr = str_replace($order, $replace, $str);
// La salida es F debido a que A es reemplazada con B, entonces B es reemplazada con C, y así sucesivamente...
// Finalmente E se reemplaza con F, debido a los reemplazos de izquierda a derecha.
$search = array('A', 'B', 'C', 'D', 'E');
$replace = array('B', 'C', 'D', 'E', 'F');
$subject = 'A';
echo str_replace($search, $replace, $subject);
// La salida es: apearpearle pear
// Por la misma razón mencionada arriba
$letters = array('a', 'p');
$fruit = array('apple', 'pear');
$text = 'a p';
$output = str_replace($letters, $fruit, $text);
echo $output;
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&note.bin-safe;
<caution>
<title>Trampa del orden de reemplazo</title>
<para>
Debido a que <function>str_replace</function> reemplaza de izquierda a derecha, podría
sustituir a un valor previamente insertado al hacer sustituciones múltiples.
Ver también los ejemplos de este documento.
</para>
</caution>
<note>
<para>
Esta función es sensible a mayúsculas y minúsculas. Utilice Use <function>str_ireplace</function>
para reemplazos insensibles a mayúsculas y minúsculas.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>str_ireplace</function></member>
<member><function>substr_replace</function></member>
<member><function>preg_replace</function></member>
<member><function>strtr</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
-->