1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-26 16:32:13 +01:00
Files
archived-doc-es/reference/strings/functions/addcslashes.xml
Pedro Antonio Gil Rodríguez 5a85030c81 Actualización a la últma versión
git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@332486 c90b9560-bf6c-de11-be94-00142212c4b1
2013-12-20 09:17:25 +00:00

178 lines
5.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: ab480f7d497b61ebebbf7d98f0bec6bc2fc564c4 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.addcslashes">
<refnamediv>
<refname>addcslashes</refname>
<refpurpose>Escapa una cadena al estilo de C</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>addcslashes</methodname>
<methodparam><type>string</type><parameter>str</parameter></methodparam>
<methodparam><type>string</type><parameter>charlist</parameter></methodparam>
</methodsynopsis>
<para>
Devuelve un string con barras invertidas antes de los caracteres que
aparecen en el parámetro <parameter>charlist</parameter>
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>str</parameter></term>
<listitem>
<para>
El string a escapar.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>charlist</parameter></term>
<listitem>
<para>
Una lista de caracteres que serán escapados. Si
<parameter>charlist</parameter> contiene caracteres como
<literal>\n</literal>, <literal>\r</literal> etc., serán
convertidos al estilo de C, mientras que otros caracteres no alfanuméricos
con código ASCII inferior a 32 y superior a 126 serán convertidos a
representación octal.
</para>
<para>
Cuando se defina una secuencia de caracteres en el argumento charlist,
asegúrese de conocer los caracteres que hay entre los caracteres
de inicio y final del rango establecido.
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
echo addcslashes('foo[ ]', 'A..z');
// salida: \f\o\o\[ \]
// Serán escapadas todas las letras mayúsculas y minúsculas
// ... pero también [\]^_`
?>
]]>
</programlisting>
</informalexample>
Además, si el primer carácter del rango tiene un valor
ASCII superior al segundo carácter del rango, este no se podrá
construir. Solamente serán escapados los caracteres de inicio, fin
y el punto. Use la función <function>ord</function> para encontrar el
valor ASCII de un carácter.
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
echo addcslashes("zoo['.']", 'z..A');
// salida: \zoo['\.']
?>
]]>
</programlisting>
</informalexample>
</para>
<para>
Ojo si se opta por escapar los caracteres 0, a, b, f, n, r, t y
v. Estos se convertirán en \0, \a, \b, \f, \n, \r, \t and \v, que son todos
secuencias de escape predefinidas en C. Muchas de estas secuencias tambíen
están definidas en otros lenguajes derivados de C, incluyendo PHP, lo que significa
que no se podría obtener el resultado deseado si se usa la salida de
<function>addcslashes</function> para generar código en tales lenguajes
con los caracteres definidos en <parameter>charlist</parameter>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve el string escapado.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>5.2.5</entry>
<entry>
Se añadieron las secuencias de escape \v y \f.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
Un rango en <parameter>charlist</parameter> como "\0..\37", escaparía a todos los
caracteres con código ASCII entre 0 y 31.
<example>
<title>Ejemplo de <function>addcslashes</function></title>
<programlisting role="php">
<![CDATA[
<?php
$escapado = addcslashes($no_escapado, "\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
-->