Skip to content

Commit

Permalink
#68 Actualización de la traducción de language/types.xml
Browse files Browse the repository at this point in the history
  • Loading branch information
Marqitos committed Feb 1, 2025
1 parent cf90349 commit fb453a4
Showing 1 changed file with 74 additions and 49 deletions.
123 changes: 74 additions & 49 deletions language/types.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1ffbadf2906a5c85d2f9437b87da3e204ea41b7a Maintainer: seros Status: ready -->
<!-- EN-Revision: f908fff129bcd8ec1605658e06457cb04e5b2b51 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<chapter xml:id="language.types" xmlns="http://docbook.org/ns/docbook">
<title>Tipos</title>
Expand All @@ -15,7 +15,7 @@
<listitem><simpara><type>null</type></simpara></listitem>
<listitem><simpara><type>bool</type></simpara></listitem>
<listitem><simpara><type>int</type></simpara></listitem>
<listitem><simpara><type>float</type> (número de punto flotante, también conocido como <type>double</type>)</simpara></listitem>
<listitem><simpara><type>float</type> (número de punto flotante)</simpara></listitem>
<listitem><simpara><type>string</type></simpara></listitem>
<listitem><simpara><type>array</type></simpara></listitem>
<listitem><simpara><type>object</type></simpara></listitem>
Expand All @@ -24,74 +24,100 @@
</itemizedlist>
</para>

<simpara>
Puede que existan aún algunas referencias al tipo "double" en el manual. Considere
al tipo double como float; los dos nombres existen sólo por razones históricas.
</simpara>
<para>
PHP es un lenguaje tipado dinámicamente, lo que significa que, por omisión,
no es necesario especificar el tipo de una variable, ya que esto se determinará
en tiempo de ejecución. Sin embargo, es posible tipificar estáticamente algunos
aspectos del lenguaje mediante el uso de
<link linkend="language.types.declarations">declaraciones de tipos</link>.
En la página <link linkend="language.types.type-system">sistema de tipos</link>
se pueden encontrar los distintos tipos que admite PHP.
</para>

<simpara>
El tipo de una variable usualmente no lo declara el programador; al contrario, es
decidido en tiempo de ejecución por PHP dependiendo del contexto en el que se emplea
dicha variable.
</simpara>
<para>
Los tipos restringen el tipo de operaciones que se pueden realizar en ellos.
Sin embargo, si se utiliza una expresión/variable en una operación que su tipo
no admite, PHP intentará <link linkend="language.types.type-juggling">convertir</link>
el valor en un tipo que admita la operación.
Este proceso depende del contexto en el que se utiliza el valor.
Para obtener más información, consulte la sección sobre
<link linkend="language.types.type-juggling">Manipulación de tipos</link>.
</para>

<tip>
<simpara>
<link linkend="types.comparisons">Tablas de comparación de tipos de PHP</link>
también pueden ser útiles, ya que contienen varios ejemplos de comparación entre
valores de diferentes tipos.
</simpara>
</tip>

<note>
<simpara>
Para comprobar el tipo y el valor de una
<link linkend="language.expressions">expresión</link>,
utilice la función <function>var_dump</function>.
Es posible forzar que una expresión se evalúe en un tipo determinado mediante
una <link linkend="language.types.typecasting">conversión de tipo</link>.
También se puede convertir el tipo de una variable en el lugar mediante
la función <function>settype</function>.
</simpara>
</note>

<para>
Para obtener una representación legible por humanos de un tipo con propósitos de depuración, use
la función <function>gettype</function>. Para comprobar un cierto tipo,
<emphasis>no</emphasis> emplee <function>gettype</function>, si no las funciones
<literal>is_<replaceable>tipo</replaceable></literal>. Algunos
ejemplos:
</para>
<para>
Para comprobar el tipo y el valor de una
<link linkend="language.expressions">expresión</link>,
utilice la función <function>var_dump</function>.
Para obtener el tipo de una
<link linkend="language.expressions">expresión</link>,
utilice la función <function>get_debug_type</function>.
To retrieve the type of an
<link linkend="language.expressions">expression</link>,
use the <function>get_debug_type</function> function.
Sin embargo, para comprobar si una expresión es de un tipo
determinado, utilice las funciones
<literal>is_<replaceable>type</replaceable></literal>.

<informalexample>
<programlisting role="php">
<![CDATA[
<?php
$un_bool = true; // un valor booleano
$un_str = "foo"; // una cadena de caracteres
$un_str2 = 'foo'; // una cadena de caracteres
$un_int = 12; // un número entero
$a_bool = true; // un valor booleano
$a_str = "foo"; // una cadena de caracteres
$a_str2 = 'foo'; // una cadena de caracteres
$an_int = 12; // un número entero
echo gettype($un_bool); // imprime: boolean
echo gettype($un_str); // imprime: string
echo get_debug_type($a_bool), "\n";
echo get_debug_type($a_str), "\n";
// Si este valor es un entero, incrementarlo en cuatro
if (is_int($un_int)) {
$un_int += 4;
if (is_int($an_int)) {
$an_int += 4;
}
// Si $un_bool es una cadena, imprimirla
// Si $a_bool es una cadena, imprimirla
// (no imprime nada)
if (is_string($un_bool)) {
echo "Cadena: $un_bool";
if (is_string($a_bool)) {
echo "Cadena: $a_bool";
}
?>
]]>
</programlisting>
&example.outputs.8;
<screen>
<![CDATA[
bool
string
int(16)
]]>
</screen>
</informalexample>
</para>
<note>
<simpara>
Antes de PHP 8.0.0, cuando la función <function>get_debug_type</function>
no estaba disponible, se podía utilizar en su lugar la función
<function>gettype</function>.
Sin embargo, no utiliza los nombres de tipos canónicos.
</simpara>
</note>

<simpara>
Para forzar la conversión de una variable a un cierto tipo, puede <link
linkend="language.types.typecasting">amoldar</link> la variable o usar la
función <function>settype</function> con ella.
</simpara>

<simpara>
Observe que una variable puede ser evaluada con valores diferentes en ciertas
situaciones, dependiendo del tipo que posea en cada momento. Para más información,
lea la sección sobre <link linkend="language.types.type-juggling">Manipulación
de tipos</link>. <link linkend="types.comparisons">Las tablas de comparación de
tipos</link> pueden resultar útiles también, ya que muestran ejemplos de varias
comparaciones relacionadas con tipos.
</simpara>
</sect1>

&language.types.type-system;
Expand All @@ -110,13 +136,12 @@ if (is_string($un_bool)) {
&language.types.void;
&language.types.never;
&language.types.relative-class-types;
&language.types.value;
&language.types.singleton;
&language.types.iterable;
&language.types.declarations;
&language.types.type-juggling;

</chapter>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
Expand Down

0 comments on commit fb453a4

Please sign in to comment.