From c7ce7edab1be8f7e8829941b67b9b5b18692ac30 Mon Sep 17 00:00:00 2001 From: Louis-Arnaud Date: Tue, 15 Sep 2026 09:30:21 +0200 Subject: [PATCH] [Sync-En] Document clone(), PHP 8.5 BC changes and attribute signatures --- language/oop5/changelog.xml | 31 +++++-- language/oop5/cloning.xml | 69 ++++++++++++++-- language/oop5/traits.xml | 40 ++++++--- language/oop5/variance.xml | 29 +++++-- language/operators/comparison.xml | 82 +++++++++++-------- .../attributes/allowdynamicproperties.xml | 8 +- language/predefined/attributes/attribute.xml | 14 ++-- language/predefined/attributes/deprecated.xml | 36 ++++++-- language/predefined/attributes/nodiscard.xml | 22 +++-- language/predefined/attributes/override.xml | 12 ++- .../attributes/returntypewillchange.xml | 4 +- .../attributes/sensitiveparameter.xml | 10 +-- language/types/integer.xml | 35 ++++---- reference/array/functions/list.xml | 13 ++- reference/curl/functions/curl-close.xml | 6 +- reference/curl/functions/curl-share-close.xml | 8 +- .../datetime/datetimeinterface/wakeup.xml | 8 +- reference/datetime/functions/date-sunrise.xml | 10 +-- reference/datetime/functions/date-sunset.xml | 24 +++--- reference/datetime/functions/gmstrftime.xml | 12 +-- reference/datetime/functions/strftime.xml | 52 ++++++------ reference/datetime/functions/strptime.xml | 16 ++-- .../functions/enchant-broker-free-dict.xml | 6 +- .../enchant/functions/enchant-broker-free.xml | 6 +- .../enchant-broker-get-dict-path.xml | 6 +- .../enchant-broker-set-dict-path.xml | 6 +- reference/fileinfo/functions/finfo-close.xml | 6 +- .../functions/register-tick-function.xml | 32 +++++++- reference/image/functions/imagedestroy.xml | 6 +- .../ldap/functions/ldap-connect-wallet.xml | 4 +- .../libxml-disable-entity-loader.xml | 59 +++---------- reference/mhash/functions/mhash-count.xml | 4 +- .../mhash/functions/mhash-get-block-size.xml | 4 +- .../mhash/functions/mhash-get-hash-name.xml | 6 +- .../mhash/functions/mhash-keygen-s2k.xml | 8 +- reference/mhash/functions/mhash.xml | 12 +-- reference/misc/functions/hrtime.xml | 31 ++++++- reference/mysqli/mysqli/get-client-info.xml | 8 +- reference/mysqli/mysqli/init.xml | 4 +- reference/mysqli/mysqli/kill.xml | 8 +- reference/mysqli/mysqli/ping.xml | 12 +-- reference/mysqli/mysqli/refresh.xml | 6 +- .../openssl/functions/openssl-free-key.xml | 10 +-- .../functions/openssl-password-hash.xml | 4 +- .../functions/openssl-password-verify.xml | 4 +- .../openssl/functions/openssl-pkey-free.xml | 4 +- .../openssl/functions/openssl-x509-free.xml | 4 +- .../pgsql/functions/pg-change-password.xml | 4 +- reference/random/functions/lcg-value.xml | 10 +-- .../reflectionfunction/isdisabled.xml | 4 +- .../reflectionmethod/setaccessible.xml | 10 ++- .../reflectionparameter/getclass.xml | 4 +- .../reflectionparameter/isarray.xml | 8 +- .../reflectionparameter/iscallable.xml | 6 +- .../reflectionproperty/setaccessible.xml | 12 +-- reference/shmop/functions/shmop-close.xml | 8 +- reference/spl/arrayiterator/construct.xml | 61 +++++++++++--- reference/spl/arrayobject/construct.xml | 72 +++++++++++++--- reference/spl/splfixedarray/wakeup.xml | 4 +- reference/spl/splobjectstorage/attach.xml | 6 +- reference/spl/splobjectstorage/contains.xml | 4 +- reference/spl/splobjectstorage/detach.xml | 6 +- reference/strings/functions/utf8-decode.xml | 18 ++-- reference/strings/functions/utf8-encode.xml | 20 ++--- reference/uodbc/functions/odbc-result-all.xml | 6 +- reference/xml/functions/xml-parser-free.xml | 10 +-- reference/xml/functions/xml-set-object.xml | 6 +- reference/zip/functions/zip-close.xml | 4 +- reference/zip/functions/zip-entry-close.xml | 4 +- .../functions/zip-entry-compressedsize.xml | 4 +- .../functions/zip-entry-compressionmethod.xml | 4 +- .../zip/functions/zip-entry-filesize.xml | 4 +- reference/zip/functions/zip-entry-name.xml | 4 +- reference/zip/functions/zip-entry-open.xml | 10 +-- reference/zip/functions/zip-entry-read.xml | 4 +- reference/zip/functions/zip-open.xml | 4 +- reference/zip/functions/zip-read.xml | 4 +- 77 files changed, 691 insertions(+), 435 deletions(-) diff --git a/language/oop5/changelog.xml b/language/oop5/changelog.xml index 2647ef575f..0b2a426536 100644 --- a/language/oop5/changelog.xml +++ b/language/oop5/changelog.xml @@ -1,5 +1,5 @@ - + Modificaciones en POO (Programación orientada a objetos) @@ -16,6 +16,23 @@ + + 8.5.0 + + Cambio: Un método que devuelve static puede ahora ser + sobrescrito en una clase final para declarar + self o el tipo de la propia clase como tipo de retorno, ya + que estos son equivalentes a static en una clase que no + puede ser extendida. + + + + 8.5.0 + + Cambio: Los traits se ligan + ahora a una clase antes que su clase padre. + + 8.4.0 @@ -32,7 +49,7 @@ 8.1.0 Adición: Soporte para el modificador final para las constantes de clase. - Además, las constantes de interfaces pueden ser redefinidas por omisión. + Además, las constantes de interfaces pueden ser redefinidas por defecto. @@ -68,7 +85,7 @@ 7.3.0 Incompatibilidad: El desempaquetado de argumento de - Traversables con claves no-&integer;es ya no es soportado. Este comportamiento no estaba previsto y por consiguiente + Traversables con claves no-&integer; ya no es soportado. Este comportamiento no estaba previsto y por consiguiente fue eliminado. @@ -229,18 +246,18 @@ no afecta a las clases sin espacio de nombres. - + 5.3.0 - Cambio: Las clases que implementan una interfaz con métodos que tienen valores por omisión definidos en sus prototipos ya no están obligadas a respetar los valores por omisión definidos en la interfaz. + Cambio: Las clases que implementan una interfaz con métodos que tienen valores por defecto definidos en sus prototipos ya no están obligadas a respetar los valores por defecto definidos en la interfaz. 5.3.0 - Cambio: Es ahora posible referenciar una clase utilizando una variable (e.g. : + Cambio: Es ahora posible referenciar una clase utilizando una variable (p. ej., echo $classname::constant;). - El valor de la variable no puede ser una palabra clave (e.g. : + El valor de la variable no puede ser una palabra clave (p. ej., self, parent o static). diff --git a/language/oop5/cloning.xml b/language/oop5/cloning.xml index a86e715713..e96b59592c 100644 --- a/language/oop5/cloning.xml +++ b/language/oop5/cloning.xml @@ -1,5 +1,5 @@ - + Clonación de objetos @@ -11,6 +11,10 @@ contiene el recurso que representa esa ventana GTK, al crear una copia, se puede desear crear una nueva ventana con las mismas propiedades, pero que el nuevo objeto contenga un recurso que represente la nueva ventana. + Otro ejemplo: si el objeto contiene una referencia a otro objeto que + utiliza, al replicar el objeto padre se puede desear crear una nueva + instancia de ese otro objeto, de modo que la réplica tenga su propia copia + independiente. @@ -83,10 +87,10 @@ $obj->object2 = new SubObject(); $obj2 = clone $obj; -print "Objeto original :\n"; +print "Objeto original:\n"; print_r($obj); -print "Objeto clonado :\n"; +print "Objeto clonado:\n"; print_r($obj2); ?> @@ -95,7 +99,7 @@ print_r($obj2); &example.outputs; SubObject Object @@ -109,7 +113,7 @@ MyCloneable Object ) ) -Objeto clonado : +Objeto clonado: MyCloneable Object ( [object1] => SubObject Object @@ -150,6 +154,61 @@ echo (clone $dateTime)->format('Y'); ]]> + + + Clonación con sustitución de propiedades + + + A partir de PHP 8.5.0, clone también está disponible como + función, cuyo segundo parámetro withProperties acepta + un array que asocia nombres de propiedades con los valores que recibe la + copia. Solo se sustituyen las propiedades indicadas; las demás conservan el + valor con el que fueron copiadas. + + + + Las sustituciones se aplican después de la ejecución de + __clone() y respetan la visibilidad de + todas las propiedades. + Las propiedades readonly + pueden modificarse en la copia aunque ya estuvieran inicializadas en el + objeto original, lo que hace que la función resulte adecuada para los + métodos que devuelven una copia modificada. + + + + Clonación de un objeto con sustitución de propiedades + + $x]); + } +} + +$p = new Point(1, 2); +$q = $p->withX(10); + +echo $q->x, ' ', $q->y; +?> +]]> + + &example.outputs; + + + + + + + Traits @@ -8,12 +8,12 @@ Los traits son un mecanismo de reutilización de código en un lenguaje de herencia simple como PHP. Un trait intenta reducir ciertas limitaciones de la herencia simple, permitiendo - al desarrollador reutilizar un cierto número de métodos en clases independientes. La sémantica entre las clases y los traits reduce la complejidad y evita los problemas + al desarrollador reutilizar un cierto número de métodos en clases independientes. La semántica entre las clases y los traits reduce la complejidad y evita los problemas típicos de la herencia múltiple y los Mixins. Un trait es similar a una clase, pero solo sirve para agrupar funcionalidades de una - manera interesante. No es posible instanciar un Trait en sí mismo. Es un + manera granular y coherente. No es posible instanciar un Trait en sí mismo. Es un añadido a la herencia tradicional, que permite la composición horizontal de comportamientos, es decir, el uso de métodos de clase sin necesidad de herencia. @@ -67,13 +67,29 @@ Hello World! Un método heredado desde una clase madre es sobrescrito por un método proveniente de un Trait. El orden de precedencia hace que los métodos de la clase actual - sobrescriban los métodos provenientes de un Trait, ellos mismos sobrecargando los métodos heredados. + sobrescriban los métodos provenientes de un Trait, que a su vez sobrescriben los métodos heredados. + + + A partir de PHP 8.5.0, los traits se ligan a una clase antes que su clase + madre; anteriormente se ligaban después. Esto refleja con mayor fidelidad + la semántica de copiar y pegar de los traits. En particular, cuando un trait + y la clase madre declaran ambos una propiedad o una constante con el mismo + nombre, la definición del trait prevalece ahora sobre la heredada, mientras + que las versiones anteriores generaban un error fatal por composición + incompatible. La resolución de métodos no se ve afectada. Consulte + la guía de + migración para más detalles. + + Ejemplo con el orden de precedencia - Un método heredado desde la clase base es sobrescrito por el que proviene - del Trait. No es el caso de los métodos reales, escritos en la clase base. + Un método heredado desde la clase base es sobrescrito por el método + insertado en MyHelloWorld desde el Trait SayWorld. El comportamiento es + el mismo para los métodos definidos en la clase MyHelloWorld. El orden de + precedencia hace que los métodos de la clase actual sobrescriban los métodos + del Trait, que a su vez sobrescriben los métodos de la clase base. @@ -478,7 +494,7 @@ Doing something Si un trait define una constante, entonces una clase no puede definir una constante con el mismo nombre, a menos que sea compatible (misma - visibilidad, mismo valor, etc.), de lo contrario se produce un error fatal. + visibilidad, valor inicial y carácter final), de lo contrario se produce un error fatal. Resolución de conflicto @@ -634,8 +650,8 @@ class ConstantsExample { A partir de PHP 8.3.0, el modificador final puede ser aplicado usando el operador as a los métodos importados desde los traits. Esto puede ser usado para impedir - que las clases hijas sobrecarguen el método. Sin embargo, la clase que usa - el trait puede seguir sobrecargando el método. + que las clases hijas sobrescriban el método. Sin embargo, la clase que usa + el trait puede seguir sobrescribiendo el método. Definir un método proveniente de un trait como <literal>final</literal> @@ -654,7 +670,7 @@ trait CommonTrait class FinalExampleA { use CommonTrait { - CommonTrait::method as final; // El 'final' impide que las clases hijas sobrecarguen el método + CommonTrait::method as final; // El 'final' impide que las clases hijas sobrescriban el método } } diff --git a/language/oop5/variance.xml b/language/oop5/variance.xml index b9e78b1cb4..69e0061535 100644 --- a/language/oop5/variance.xml +++ b/language/oop5/variance.xml @@ -1,5 +1,5 @@ - + Covarianza y Contravarianza @@ -18,7 +18,7 @@ Un tipo es retirado de un - tipo union + tipo unión @@ -39,7 +39,7 @@ - Un tipo de clase se considera menos específico si lo contrario es cierto. + Una declaración de tipo se considera menos específica si lo contrario es cierto. @@ -135,6 +135,17 @@ Mavrick barks ]]> + + + A partir de PHP 8.5.0, cuando un método padre declara static como + tipo de retorno, un método que lo sobrescribe en una clase final + puede declarar en su lugar self o el tipo de la propia clase como + tipo de retorno, ya que estos son equivalentes a static en una clase + que no puede extenderse más. Consulte + la + guía de migración para más detalles. + + @@ -176,8 +187,8 @@ abstract class Animal - Para ver el comportamiento de la contravarianza, el método - método eat es sobrecargado en la clase Dog para permitir + Para ver el comportamiento de la contravarianza, el + método eat es sobrescrito en la clase Dog para permitir cualquier objeto de tipo Food. La clase Cat permanece sin cambios. @@ -223,10 +234,10 @@ Mavrick eats Food ]]> - - Pero, ¿qué sucede si $kitty intenta comer (eat) la - banana ($banana) ? - + + Pero, ¿qué sucede si $kitty intenta comer (eat) la + banana ($banana)? + - + Operadores de comparación Comparación Los operadores de comparación, como su nombre indica, - permiten comparar dos valores. También se debe estar interesado por las + permiten comparar dos valores. También pueden resultar de interés las tablas de comparaciones de tipos, ya que muestran ejemplos de muchos tipos de comparaciones. @@ -25,7 +25,7 @@ $a == $b Igual &true; si $a es igual a - $b después del transtipado. + $b después de la manipulación de tipos. $a === $b @@ -39,17 +39,17 @@ $a != $b Diferente &true; si $a es diferente de - $b después del transtipado. + $b después de la manipulación de tipos. $a <> $b Diferente &true; si $a es diferente de - $b después del transtipado. + $b después de la manipulación de tipos. $a !== $b - Diferente + No idéntico &true; si $a es diferente de $b o bien si no son del mismo tipo. @@ -63,7 +63,7 @@ $a > $b - Mayor + Mayor que &true; si $a es estrictamente mayor que $b. @@ -83,7 +83,7 @@ $a <=> $b Combinado - Un &integer; menor, igual o mayor a cero cuando + Un int menor, igual o mayor a cero cuando $a es menor, igual, o mayor a $b respectivamente. @@ -198,7 +198,7 @@ $a = (object) ["a" => "c"]; $b = (object) ["a" => "b"]; echo $a <=> $b, ' '; // 1 -// No solo las valores son comparados; las claves deben coincidir +// No solo los valores son comparados; las claves deben coincidir $a = (object) ["a" => "b"]; $b = (object) ["b" => "b"]; echo $a <=> $b, ' '; // 1 @@ -232,7 +232,7 @@ echo $a <=> $b, ' '; // 1 bool o null Cualquier cosa - Convierte en bool, &false; < &true; + Convierte ambos lados a bool, &false; < &true; object @@ -250,7 +250,7 @@ echo $a <=> $b, ' '; // 1 &string;, &resource;, &integer; o &float; - Transforma los strings y los recursos en números + Transforma los strings y los recursos en números, matemática habitual @@ -275,11 +275,11 @@ echo $a <=> $b, ' '; // 1 - Comparación Booléen/null + Comparación bool/null count($op2)) { - return 1; // $op1 > $op2 - } - foreach ($op1 as $key => $val) { - if (!array_key_exists($key, $op2)) { - return 1; - } elseif ($val < $op2[$key]) { - return -1; - } elseif ($val > $op2[$key]) { - return 1; - } - } - return 0; // $op1 == $op2 + if (count($op1) < count($op2)) { + return -1; // $op1 < $op2 + } elseif (count($op1) > count($op2)) { + return 1; // $op1 > $op2 + } + foreach ($op1 as $key => $val) { + if (!array_key_exists($key, $op2)) { + return 1; + } elseif ($val < $op2[$key]) { + return -1; + } elseif ($val > $op2[$key]) { + return 1; + } + } + return 0; // $op1 == $op2 } ?> - ]]> +]]> @@ -364,6 +364,22 @@ function standard_array_compare($op1, $op2) El resultado de la comparación de valores incomparables es indefinido, y no debe ser utilizado. + + + A partir de PHP 8.5.0, la comparación flexible de un object no + comparable (como una enumeración, CurlHandle u otra + clase interna) con un bool mediante == o + != se evalúa siempre como si el objeto se convirtiera a + bool, es decir, (bool) $object. Como un objeto + de este tipo siempre se convierte a &true;, es igual a &true; y distinto de + &false;. Antes de PHP 8.5.0, esto solo se aplicaba al comparar con un literal + bool ($object == true); la comparación con un + valor bool almacenado en una variable siempre devolvía &false;. + Consulte + la + guía de migración para más detalles. + + @@ -421,7 +437,7 @@ if (empty($_POST['action'])) { Es importante saberlo si se desea devolver una variable por referencia. La instrucción return $var == 42 ? $a : $b; - en una función devuelta por referencia no funcionará y se emitirá una alerta. + en una función que devuelve por referencia no funcionará y se emitirá una alerta. @@ -433,10 +449,10 @@ if (empty($_POST['action'])) { Anteriormente a PHP 8.0.0, el operador ternario se evaluaba de izquierda a derecha, en lugar de derecha a izquierda como la mayoría de los otros lenguajes de programación. - Dependiendo de la asociatividad a la izquierda es obsoleto a partir de PHP 7.4.0. + Depender de la asociatividad a la izquierda está obsoleto a partir de PHP 7.4.0. A partir de PHP 8.0.0, el operador ternario no es asociativo. - Comportamiento de PHP + Comportamiento no evidente del operador ternario La combinación de ternario corto (?:), sin embargo, es estable y se comporta de manera razonable. Esto evaluará el primer argumento que evalúa a un valor no-falsy. - Tenga en cuenta que los valores indefinidos siempre emitirán un aviso. + Tenga en cuenta que los valores indefinidos seguirán emitiendo una advertencia. Combinación de ternario corto diff --git a/language/predefined/attributes/allowdynamicproperties.xml b/language/predefined/attributes/allowdynamicproperties.xml index a1af22f6a0..7aa129c091 100644 --- a/language/predefined/attributes/allowdynamicproperties.xml +++ b/language/predefined/attributes/allowdynamicproperties.xml @@ -1,5 +1,5 @@ - + El atributo AllowDynamicProperties @@ -29,15 +29,13 @@ - #[\Attribute] + #[\Attribute(\Attribute::TARGET_CLASS)] final AllowDynamicProperties &Methods; - - - + diff --git a/language/predefined/attributes/attribute.xml b/language/predefined/attributes/attribute.xml index dcef4160b9..e39d241b6f 100644 --- a/language/predefined/attributes/attribute.xml +++ b/language/predefined/attributes/attribute.xml @@ -1,5 +1,5 @@ - + El atributo Attribute @@ -12,7 +12,7 @@ Los atributos ofrecen la capacidad de añadir información de metadatos estructurados y legibles por máquina en las declaraciones del código: Clases, métodos, funciones, - argumentos, propiedades y constantes de clase pueden ser el objetivo de un atributo. + parámetros, propiedades y constantes de clase pueden ser el objetivo de un atributo. Los metadatos definidos por los atributos pueden entonces ser inspeccionados en tiempo de ejecución usando las APIs de Reflexión. Los atributos podrían por lo tanto ser considerados como un lenguaje de configuración @@ -25,7 +25,7 @@ - #[\Attribute] + #[\Attribute(\Attribute::TARGET_CLASS)] final Attribute @@ -85,9 +85,7 @@ &Methods; - - - + @@ -186,6 +184,10 @@ 8.5.0 Se ha añadido Attribute::TARGET_CONSTANT. + Aplicar #[\Attribute] a una clase abstracta, un enum, + una interfaz o un trait provoca ahora un error en tiempo de compilación + (anteriormente solo se informaba en tiempo de ejecución al llamar a + ReflectionAttribute::newInstance). diff --git a/language/predefined/attributes/deprecated.xml b/language/predefined/attributes/deprecated.xml index 41710c973e..7ff854a193 100644 --- a/language/predefined/attributes/deprecated.xml +++ b/language/predefined/attributes/deprecated.xml @@ -1,5 +1,5 @@ - + El atributo Deprecated @@ -13,6 +13,10 @@ Este atributo se utiliza para marcar la funcionalidad como obsoleta. El uso de funcionalidad obsoleta hará que se emita un error E_USER_DEPRECATED. + + A partir de PHP 8.5.0, este atributo también puede aplicarse a traits y a + constantes de tiempo de compilación declaradas fuera de una clase. +
@@ -20,7 +24,7 @@ - #[\Attribute] + #[\Attribute(\Attribute::TARGET_METHOD | \Attribute::TARGET_FUNCTION | \Attribute::TARGET_CLASS_CONSTANT | \Attribute::TARGET_CONSTANT | \Attribute::TARGET_CLASS)] final Deprecated @@ -40,9 +44,7 @@ &Methods; - - - +
@@ -104,6 +106,30 @@ This is unsafe +
+ &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.5.0 + + Deprecated ahora puede aplicarse a traits y a + constantes de tiempo de compilación declaradas fuera de una clase, estas + últimas mediante el nuevo objetivo Attribute::TARGET_CONSTANT. + + + + + +
+
&reftitle.seealso; diff --git a/language/predefined/attributes/nodiscard.xml b/language/predefined/attributes/nodiscard.xml index 9a998d4aaf..0c28ab22a0 100644 --- a/language/predefined/attributes/nodiscard.xml +++ b/language/predefined/attributes/nodiscard.xml @@ -1,5 +1,5 @@ - + El atributo NoDiscard @@ -54,7 +54,7 @@ - #[\Attribute] + #[\Attribute(\Attribute::TARGET_METHOD | \Attribute::TARGET_FUNCTION)] final NoDiscard @@ -68,9 +68,7 @@ &Methods; - - - +
@@ -98,9 +96,9 @@ $items * @return array @@ -111,12 +109,12 @@ function bulk_process(array $items): array { foreach ($items as $key => $item) { if (\random_int(0, 9999) < 9999) { - // Pretend to do something useful with $item, - // which will succeed in 99.99% of cases. - echo "Processing {$item}", PHP_EOL; + // Simular que se hace algo útil con $item, + // lo cual tendrá éxito en el 99,99 % de los casos. + echo "Procesando {$item}", PHP_EOL; $error = null; } else { - $error = new \Exception("Failed to process {$item}."); + $error = new \Exception("Error al procesar {$item}."); } $results[$key] = $error; diff --git a/language/predefined/attributes/override.xml b/language/predefined/attributes/override.xml index eca3336911..bf7c6ba5a2 100644 --- a/language/predefined/attributes/override.xml +++ b/language/predefined/attributes/override.xml @@ -1,8 +1,8 @@ - + - La clase Override + El atributo Override Override @@ -19,7 +19,7 @@ o en una interfaz implementada, se emitirá un error de compilación. - El atributo solo puede ser utilizado con el método + El atributo no puede ser utilizado con el método __construct(), que está excluido de las verificaciones de firma. @@ -30,15 +30,13 @@ - #[\Attribute] + #[\Attribute(\Attribute::TARGET_METHOD | \Attribute::TARGET_PROPERTY)] final Override &Methods; - - - + diff --git a/language/predefined/attributes/returntypewillchange.xml b/language/predefined/attributes/returntypewillchange.xml index 69a68fc9e6..abed468fd9 100644 --- a/language/predefined/attributes/returntypewillchange.xml +++ b/language/predefined/attributes/returntypewillchange.xml @@ -1,5 +1,5 @@ - + El atributo ReturnTypeWillChange @@ -53,7 +53,7 @@ - #[\Attribute] + #[\Attribute(\Attribute::TARGET_METHOD)] final ReturnTypeWillChange diff --git a/language/predefined/attributes/sensitiveparameter.xml b/language/predefined/attributes/sensitiveparameter.xml index 741dea4e15..20f4572665 100644 --- a/language/predefined/attributes/sensitiveparameter.xml +++ b/language/predefined/attributes/sensitiveparameter.xml @@ -1,5 +1,5 @@ - + El atributo SensitiveParameter @@ -11,7 +11,7 @@ &reftitle.intro; - Este atributo se utiliza para marcar un parámetro que es sensible y cuya + Este atributo se utiliza para marcar un parámetro que es sensible y cuyo valor debe ser censurado si está presente en un rastro de pila. @@ -21,15 +21,13 @@ - #[\Attribute] + #[\Attribute(\Attribute::TARGET_PARAMETER)] final SensitiveParameter &Methods; - - - + diff --git a/language/types/integer.xml b/language/types/integer.xml index 8f88e7ba19..3ac752ecc6 100644 --- a/language/types/integer.xml +++ b/language/types/integer.xml @@ -1,5 +1,5 @@ - + Los enteros @@ -62,7 +62,7 @@ $a = 1_234_567; // un número decimal (a partir de PHP 7.4.0) Formalmente, la estructura de un int literal es a partir de PHP 8.1.0 (anteriormente, los prefijos octales 0o o 0O - no estaban permitidos, y antes de PHP 7.4.0, los underscores no estaban permitidos. + no estaban permitidos, y antes de PHP 7.4.0, los underscores no estaban permitidos): @@ -109,7 +109,7 @@ integer : decimal
- Desbordamiento de entero en un sistema de 32 bits + Desbordamiento de entero División de entero - No hay operador de división de &integer; en PHP, para lograr esto - utilizar la función intdiv. + No hay operador de división de &integer; en PHP. Para lograrlo, + utilice la función intdiv. 1/2 produce el &float; (0.5). El valor puede ser convertido en un &integer; para redondear hacia cero, o utilizando la función round para tener un control @@ -172,7 +172,7 @@ var_dump(round(25/7)); // float(4) - Desde un <link linkend="language.types.boolean">booléen</link> + Desde un <link linkend="language.types.boolean">booleano</link> &false; corresponde a 0 (cero), y &true; corresponde a @@ -202,7 +202,7 @@ function foo($value): int { } var_dump(foo(8.1)); // "Deprecated: Implicit conversion from float 8.1 to int loses precision" a partir de PHP 8.1.0 -var_dump(foo(8.1)); // Antes de PHP 8.1.0 +var_dump(foo(8.1)); // 8 antes de PHP 8.1.0 var_dump(foo(8.0)); // 8 en ambos casos var_dump((int) 8.1); // 8 en ambos casos @@ -211,19 +211,24 @@ var_dump(intval(8.1)); // 8 en ambos casos ]]> - + Si el número de coma flotante está más allá de los límites de los &integer;s (habitualmente, +/- 2.15e+9 = 2^31 en plataformas de 32 bits y +/- 9.22e+18 = 2^63 en plataformas de 64 bits), el resultado será indefinido, ya que el &float; no tiene suficiente precisión para dar un resultado &integer; exacto. - ¡No se emite ninguna alerta cuando ocurre este comportamiento! - + A partir de PHP 8.5.0, se emite un E_WARNING cuando un + float que no es representable como int se + convierte a este tipo. Antes de PHP 8.5.0, no se emitía ningún diagnóstico. + - - NaN, Infinity y -Inf son siempre igual a cero al convertir en + + NaN, Inf y -Inf son siempre igual a cero al convertir en int. - + A partir de PHP 8.5.0, convertirlos a int emite un + E_WARNING, al igual que convertir NAN + a cualquier otro tipo. + @@ -236,7 +241,7 @@ var_dump(intval(8.1)); // 8 en ambos casos ]]> @@ -274,7 +279,7 @@ echo (int) ( (0.1+0.7) * 10 ); // Muestra 7 ! El comportamiento de la conversión en &integer; es indefinido desde otros tipos. - No reportar ningún comportamiento observado, sabiendo que pueden + No confíe en ningún comportamiento observado, ya que puede cambiar sin previo aviso. diff --git a/reference/array/functions/list.xml b/reference/array/functions/list.xml index b3243a47bd..82146dd8dd 100644 --- a/reference/array/functions/list.xml +++ b/reference/array/functions/list.xml @@ -1,5 +1,5 @@ - + @@ -88,6 +88,13 @@ + + 8.5.0 + + Desestructurar un valor que no es un array (distinto de &null;) ahora emite un + E_WARNING. + + 7.3.0 @@ -117,11 +124,11 @@ $info = array('coffee', 'brown', 'caffeine'); -// Listando todas las variables +// Enumerando todas las variables list($drink, $color, $power) = $info; echo "$drink es $color y $power lo hace especial.\n"; -// Listando algunas de ellas +// Enumerando algunas de ellas list($drink, , $power) = $info; echo "$drink tiene $power.\n"; diff --git a/reference/curl/functions/curl-close.xml b/reference/curl/functions/curl-close.xml index 950e52d40e..57b8194629 100644 --- a/reference/curl/functions/curl-close.xml +++ b/reference/curl/functions/curl-close.xml @@ -1,11 +1,11 @@ - + curl_close - Cierra una sesión CURL + Cierra una sesión cURL @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "as it has no effect since PHP 8.0")] voidcurl_close CurlHandlehandle diff --git a/reference/curl/functions/curl-share-close.xml b/reference/curl/functions/curl-share-close.xml index 23dbe45d04..30007c660c 100644 --- a/reference/curl/functions/curl-share-close.xml +++ b/reference/curl/functions/curl-share-close.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "as it has no effect since PHP 8.0")] voidcurl_share_close CurlShareHandleshare_handle @@ -75,12 +75,12 @@ Ejemplo con <function>curl_share_setopt</function> Este ejemplo crea un manejador compartido cURL, añade dos manejadores - cURL, y luego los ejecuta con cookies de datos compartidos. + cURL, y luego los ejecuta compartiendo los datos de las cookies. - + @@ -17,17 +17,17 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: 'this method is obsolete, as serialization hooks are provided by __unserialize() and __serialize()')] public voidDateTime::__wakeup - #[\Deprecated] + #[\Deprecated(since: '8.5', message: 'this method is obsolete, as serialization hooks are provided by __unserialize() and __serialize()')] public voidDateTimeImmutable::__wakeup - #[\Deprecated] + #[\Deprecated(since: '8.5', message: 'this method is obsolete, as serialization hooks are provided by __unserialize() and __serialize()')] public voidDateTimeInterface::__wakeup diff --git a/reference/datetime/functions/date-sunrise.xml b/reference/datetime/functions/date-sunrise.xml index 8e6d992bcb..37e3f25388 100644 --- a/reference/datetime/functions/date-sunrise.xml +++ b/reference/datetime/functions/date-sunrise.xml @@ -1,6 +1,6 @@ - + @@ -22,7 +22,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1', message: 'use date_sun_info() instead')] stringintfloatfalsedate_sunrise inttimestamp intreturnFormatSUNFUNCS_RET_STRING @@ -54,7 +54,7 @@ - Constantes para el argumento <parameter>format</parameter> + Constantes para el argumento <parameter>returnFormat</parameter> @@ -134,7 +134,7 @@ 108° - Crepúsculo astronómico: el punto donde el sol comienza a ser la fuente de toda iluminación. + Crepúsculo astronómico: el punto donde el sol comienza a ser la fuente de cualquier iluminación. @@ -228,7 +228,7 @@ echo date("D M d Y"). ', hora de salida del sol: ' .date_sunrise(time(), SUNFUNC diff --git a/reference/datetime/functions/date-sunset.xml b/reference/datetime/functions/date-sunset.xml index 8e1e1cb0a9..28f02e2563 100644 --- a/reference/datetime/functions/date-sunset.xml +++ b/reference/datetime/functions/date-sunset.xml @@ -1,6 +1,6 @@ - + @@ -14,7 +14,7 @@ Esta función está OBSOLETA a partir de PHP 8.1.0. - Depender de esta función está altamente desaconsejo. Use + Depender de esta función está altamente desaconsejado. Use date_sun_info en su lugar. @@ -23,7 +23,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1', message: 'use date_sun_info() instead')] stringintfloatfalsedate_sunset inttimestamp intreturnFormatSUNFUNCS_RET_STRING @@ -91,7 +91,7 @@ latitude - Por omisión, es el Norte. Pase un valor negativo para el Sur. + Por defecto, es el Norte. Pase un valor negativo para el Sur. Ver también date.default_latitude. @@ -100,7 +100,7 @@ longitude - Por omisión, es el Este. Pase un valor negativo para el Oeste. + Por defecto, es el Este. Pase un valor negativo para el Oeste. Ver también date.default_longitude. @@ -111,7 +111,7 @@ zenith es el ángulo entre el centro del sol y la línea perpendicular a la superficie de la tierra. - Por omisión + Por defecto es date.sunset_zenith
Valores comunes de ángulo <parameter>zenith</parameter> @@ -133,11 +133,11 @@ 102° - Crepúsculo náutico: el punto de fin del horizonte siendo visible en el mar. + Crepúsculo náutico: el punto en el que el horizonte deja de ser visible en el mar. 108° - Crepúsculo astronómico: el punto donde el sol deja de ser la fuente de toda iluminación. + Crepúsculo astronómico: el punto donde el sol deja de ser la fuente de cualquier iluminación. @@ -164,7 +164,7 @@ &reftitle.returnvalues; Devuelve la hora de puesta del sol en el returnFormat - especificado&return.falseforfailure;. Una razón posible del fallo es que + especificado en caso de éxito&return.falseforfailure;. Una razón posible del fallo es que el sol no se pone, lo cual ocurre dentro de los círculos polares durante parte del año. @@ -215,11 +215,11 @@ diff --git a/reference/datetime/functions/gmstrftime.xml b/reference/datetime/functions/gmstrftime.xml index d3cc68186f..fd69862808 100644 --- a/reference/datetime/functions/gmstrftime.xml +++ b/reference/datetime/functions/gmstrftime.xml @@ -1,11 +1,11 @@ - + gmstrftime - Formatea una fecha/hora GMT/TUC según la configuración local + Formatea una fecha/hora GMT/UTC según la configuración local @@ -19,7 +19,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1', message: 'use IntlDateFormatter::format() instead')] stringfalsegmstrftime stringformat intnulltimestamp&null; @@ -64,11 +64,11 @@ argumento timestamp o la hora local actual si no se proporciona ningún timestamp. Los nombres de los meses, días de la semana y otras cadenas - dependientes de una localización dada, respetan la localización + dependientes de una localización dada respetan la localización actual definida por la función setlocale. En caso de error, se devuelve &false;. - - + + &reftitle.changelog; diff --git a/reference/datetime/functions/strftime.xml b/reference/datetime/functions/strftime.xml index 9824d74a6b..84569bf52d 100644 --- a/reference/datetime/functions/strftime.xml +++ b/reference/datetime/functions/strftime.xml @@ -1,6 +1,6 @@ - + @@ -19,7 +19,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1', message: 'use IntlDateFormatter::format() instead')] stringfalsestrftime stringformat intnulltimestamp&null; @@ -38,7 +38,7 @@ rango de fechas puede estar limitado a fechas no anteriores a la época Unix. Esto significa que %e, %T, %R y %D (y puede que otros) y las fechas anteriores al - 1 de Enero de 1970 no funcionarán bajo Windows, + 1 de enero de 1970 no funcionarán bajo Windows, en algunas distribuciones de Linux, y algunos otros sistemas operativos. Para Windows, una lista completa de las opciones de conversión está disponible en el sitio de MSDN. @@ -102,12 +102,12 @@ %u Representación ISO-8601 del día de la semana - De 1 (para Lunes) a 7 (para Domingo) + De 1 (para lunes) a 7 (para domingo) %w Representación numérica del día de la semana - De 0 (para Domingo) a 6 (para Sábado) + De 0 (para domingo) a 6 (para sábado) Semana @@ -117,23 +117,23 @@ %U Número de la semana del año dado, comenzando por el primer - Lunes como primera semana + domingo como primera semana 13 (para la 13ª semana completa del año) %V Número de la semana del año, siguiendo la norma ISO-8601:1988, comenzando como primera semana, la semana del año que contiene al menos - 4 días, y donde Lunes es el inicio de la semana + 4 días, y donde el lunes es el inicio de la semana De 01 a 53 (donde 53 cuenta como semana de solapamiento) %W Una representación numérica de la semana del año, comenzando - por el primer Lunes de la primera semana - 46 (para la 46ª semana de la semana comenzando - por un Lunes) + por el primer lunes como primera semana + 46 (para la 46ª semana del año comenzando + por un lunes) Mes @@ -158,7 +158,7 @@ %m Mes, con 2 dígitos - De 01 (para Enero) a 12 (para Diciembre) + De 01 (para enero) a 12 (para diciembre) Año @@ -341,8 +341,8 @@ A diferencia de la norma ISO-9899:1999, Sun Solaris - comienza con el Domingo a 1. También, el formato %u - no funcionará tal como se describe en este manual. + comienza con el domingo a 1. Por lo tanto, el formato %u + puede no funcionar tal como se describe en este manual. @@ -398,8 +398,8 @@ especificadores de conversión no son soportados. Bajo Windows, el hecho de proporcionar un especificador de conversión desconocido devolverá 5 mensajes de nivel E_WARNING y devolverá &false; - al final. Bajo otros sistemas operativos, no recibirá ningún - mensaje de nivel E_WARNING y la salida contendrá los + al final. Bajo otros sistemas operativos, puede no recibirse ningún + mensaje de nivel E_WARNING y la salida puede contener los especificadores no convertidos. @@ -452,11 +452,11 @@ echo strftime(" in German %A.\n"); - Ejemplo en formato de fecha ISO 8601:1988 + Ejemplo de número de semana ISO 8601:1988 'Idéntico a "%H:%M"', 'S' => 'Una representación con 2 dígitos de los segundos', 'T' => 'Idéntico a "%H:%M:%S"', - 'U' => 'Número de la semana para el año actual, comenzando por el primer Domingo como primera semana', - 'V' => 'Número ISO-8601:1988 de la semana del año actual, comenzando por la primera semana del año con al menos 4 días de semana, con el Lunes como inicio de semana', - 'W' => 'Una representación numérica de la semana del año, comenzando por el primer Lunes como primera semana', + 'U' => 'Número de la semana para el año actual, comenzando por el primer domingo como primera semana', + 'V' => 'Número ISO-8601:1988 de la semana del año actual, comenzando por la primera semana del año con al menos 4 días de semana, con el lunes como inicio de semana', + 'W' => 'Una representación numérica de la semana del año, comenzando por el primer lunes como primera semana', 'X' => 'Representación preferida para la hora, basada en la localización, sin la fecha', 'Y' => 'Una representación con 4 dígitos del año', 'Z' => 'La abreviación del desplazamiento horario, no proporcionada por %z (depende del sistema operativo)', @@ -619,8 +619,8 @@ Formato conocido: 'H' = '11' ( Una representación con 2 dígitos Formato conocido: 'I' = '11' ( Una representación con 2 dígitos de la hora en formato 12-horas ) Formato conocido: 'M' = '24' ( Una representación con 2 dígitos de los minutos ) Formato conocido: 'S' = '44' ( Una representación con 2 dígitos de los segundos ) -Formato conocido: 'U' = '48' ( Número de la semana para el año actual, comenzando por el primer Domingo como primera semana ) -Formato conocido: 'W' = '48' ( Una representación numérica de la semana del año, comenzando por el primer Lunes como primera semana ) +Formato conocido: 'U' = '48' ( Número de la semana para el año actual, comenzando por el primer domingo como primera semana ) +Formato conocido: 'W' = '48' ( Una representación numérica de la semana del año, comenzando por el primer lunes como primera semana ) Formato conocido: 'X' = '11:24:44' ( Representación preferida para la hora, basada en la localización, sin la fecha ) Formato conocido: 'Y' = '2010' ( Una representación con 4 dígitos del año ) Formato conocido: 'Z' = 'GMT Standard Time' ( La abreviación del desplazamiento horario, no proporcionada por %z (depende del sistema operativo) ) @@ -650,7 +650,7 @@ Formato desconocido: 'P' ( "am" o "pm" (en minúsculas) ba Formato desconocido: 'Q' Formato desconocido: 'R' ( Idéntico a "%H:%M" ) Formato desconocido: 'T' ( Idéntico a "%H:%M:%S" ) -Formato desconocido: 'V' ( Número ISO-8601:1988 de la semana del año actual, comenzando por la primera semana del año con al menos 4 días de semana, con el Lunes como inicio de semana ) +Formato desconocido: 'V' ( Número ISO-8601:1988 de la semana del año actual, comenzando por la primera semana del año con al menos 4 días de semana, con el lunes como inicio de semana ) Formato desconocido: 'e' ( Día del mes, con un espacio precediendo a un solo dígito ) Formato desconocido: 'f' Formato desconocido: 'g' ( Una representación con 2 dígitos del año en formato ISO-8601:1988 (ver %V) ) @@ -696,7 +696,7 @@ Formato desconocido: 'v' mktime strptime gmstrftime - grupo de especificaciones de strftime + Especificación de The Open Group de strftime diff --git a/reference/datetime/functions/strptime.xml b/reference/datetime/functions/strptime.xml index a0e79c28ba..86c5e10e42 100644 --- a/reference/datetime/functions/strptime.xml +++ b/reference/datetime/functions/strptime.xml @@ -1,6 +1,6 @@ - + @@ -17,7 +17,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.2', message: 'use date_parse_from_format() (for locale-independent parsing), or IntlDateFormatter::parse() (for locale-dependent parsing) instead')] arrayfalsestrptime stringtimestamp stringformat @@ -52,7 +52,7 @@ que el usado en strftime). Observe que algunas de las opciones de formato disponibles en strftime pueden no tener ningún efecto en strptime; el subconjunto exacto que está - soportado variará según el sistema operativo y a la biblioteca de C que esté + soportado variará según el sistema operativo y la biblioteca de C que esté en uso. @@ -68,7 +68,7 @@ &reftitle.returnvalues; - Devuelve un array &return.falseforfailure;. + Devuelve un array&return.falseforfailure;. @@ -100,7 +100,7 @@ "tm_mon" - Meses desde Enero (0-11) + Meses desde enero (0-11) "tm_year" @@ -108,11 +108,11 @@ "tm_wday" - Días desde el Domingo (0-6) + Días desde el domingo (0-6) "tm_yday" - Días desde el 1 de Enero (0-365) + Días desde el 1 de enero (0-365) "unparsed" @@ -199,7 +199,7 @@ Array Internamente, esta función llama a la función strptime() proporcionada por la biblioteca C del sistema. Esta función puede presentar diferencias notables de comportamiento en diferentes sistemas operativos. Se - recomienda el uso de date_parse_from_format, a la cuál no le + recomienda el uso de date_parse_from_format, a la cual no le afectan estas cosas. diff --git a/reference/enchant/functions/enchant-broker-free-dict.xml b/reference/enchant/functions/enchant-broker-free-dict.xml index a2f5209bfa..ae4351c572 100644 --- a/reference/enchant/functions/enchant-broker-free-dict.xml +++ b/reference/enchant/functions/enchant-broker-free-dict.xml @@ -1,8 +1,8 @@ - + - + enchant_broker_free_dict Libera un recurso de diccionario @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'as EnchantDictionary objects are freed automatically')] boolenchant_broker_free_dict EnchantDictionarydictionary diff --git a/reference/enchant/functions/enchant-broker-free.xml b/reference/enchant/functions/enchant-broker-free.xml index 411cff251d..0a6a283d9a 100644 --- a/reference/enchant/functions/enchant-broker-free.xml +++ b/reference/enchant/functions/enchant-broker-free.xml @@ -1,8 +1,8 @@ - + - + enchant_broker_free Libera los recursos del patrocinador así como sus diccionarios @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'as EnchantBroker objects are freed automatically')] boolenchant_broker_free EnchantBrokerbroker diff --git a/reference/enchant/functions/enchant-broker-get-dict-path.xml b/reference/enchant/functions/enchant-broker-get-dict-path.xml index 4f0c4b7b34..65b055daf8 100644 --- a/reference/enchant/functions/enchant-broker-get-dict-path.xml +++ b/reference/enchant/functions/enchant-broker-get-dict-path.xml @@ -1,8 +1,8 @@ - + - + enchant_broker_get_dict_path Obtiene la ruta del directorio para un backend proporcionado @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0')] stringfalseenchant_broker_get_dict_path EnchantBrokerbroker inttype diff --git a/reference/enchant/functions/enchant-broker-set-dict-path.xml b/reference/enchant/functions/enchant-broker-set-dict-path.xml index 1b5ab3566e..6df2479f33 100644 --- a/reference/enchant/functions/enchant-broker-set-dict-path.xml +++ b/reference/enchant/functions/enchant-broker-set-dict-path.xml @@ -1,8 +1,8 @@ - + - + enchant_broker_set_dict_path Define la ruta del directorio para un backend proporcionado @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0')] boolenchant_broker_set_dict_path EnchantBrokerbroker inttype diff --git a/reference/fileinfo/functions/finfo-close.xml b/reference/fileinfo/functions/finfo-close.xml index 4066a2d314..5d7826dcfa 100644 --- a/reference/fileinfo/functions/finfo-close.xml +++ b/reference/fileinfo/functions/finfo-close.xml @@ -1,7 +1,7 @@ - + - + finfo_close Cierra una instancia finfo @@ -12,7 +12,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: 'as finfo objects are freed automatically')] truefinfo_close finfofinfo diff --git a/reference/funchand/functions/register-tick-function.xml b/reference/funchand/functions/register-tick-function.xml index edca817715..d05b46ac18 100644 --- a/reference/funchand/functions/register-tick-function.xml +++ b/reference/funchand/functions/register-tick-function.xml @@ -1,6 +1,6 @@ - + @@ -53,6 +53,36 @@ + + &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.5.0 + + Los manejadores de tick ahora se desactivan más tarde durante el cierre + de la petición: después de que se hayan ejecutado todas las funciones de + cierre y los destructores, y después de que se hayan limpiado los + manejadores de salida. Anteriormente se desactivaban al comienzo mismo + del cierre de la petición, por lo que las funciones de tick ya no se + llamaban durante las funciones de cierre, los destructores ni el + tratamiento de la salida. Consulte la + guía de + migración para más detalles. + + + + + + + &reftitle.examples; diff --git a/reference/image/functions/imagedestroy.xml b/reference/image/functions/imagedestroy.xml index f982f1e591..2880b70223 100644 --- a/reference/image/functions/imagedestroy.xml +++ b/reference/image/functions/imagedestroy.xml @@ -1,5 +1,5 @@ - + @@ -12,14 +12,14 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "as it has no effect since PHP 8.0")] trueimagedestroy GdImageimage ¬e.resource-migration-8.0-dead-function; Anterior a PHP 8.0.0, imagedestroy liberaba toda la memoria - asociada a la recurso image. A partir de la versión 8.0.0, + asociada al recurso image. A partir de la versión 8.0.0, la extensión GD utiliza objetos en lugar de recursos, y los objetos no pueden ser cerrados explícitamente. diff --git a/reference/ldap/functions/ldap-connect-wallet.xml b/reference/ldap/functions/ldap-connect-wallet.xml index 1a92112773..2be3883c47 100644 --- a/reference/ldap/functions/ldap-connect-wallet.xml +++ b/reference/ldap/functions/ldap-connect-wallet.xml @@ -1,5 +1,5 @@ - + ldap_connect_wallet @@ -11,7 +11,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: "8.5", message: "as it is broken since PHP 8.0")] LDAP\Connectionfalseldap_connect_wallet stringnulluri&null; stringwallet diff --git a/reference/libxml/functions/libxml-disable-entity-loader.xml b/reference/libxml/functions/libxml-disable-entity-loader.xml index 2c5e3f804f..ac46bfb296 100644 --- a/reference/libxml/functions/libxml-disable-entity-loader.xml +++ b/reference/libxml/functions/libxml-disable-entity-loader.xml @@ -1,6 +1,6 @@ - + @@ -15,16 +15,16 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'as external entity loading is disabled by default')] boollibxml_disable_entity_loader booldisable&true; - + Activa o desactiva la carga de entidades externas. Se debe tener en cuenta que desactivar la carga de entidades externas puede causar problemas al cargar documentos XML. - - + + A partir de libxml 2.9.0, la sustitución de entidades está desactivada por defecto, por lo que no es necesario desactivar la carga de entidades externas, @@ -34,7 +34,7 @@ Generalmente, es preferible utilizar libxml_set_external_entity_loader para suprimir la carga de entidades externas. La constante LIBXML_NO_XXE también puede ser utilizada para evitar esto (disponible únicamente en Libxml >= 2.13.0, a partir de PHP 8.4.0). - + @@ -44,12 +44,12 @@ disable - + Desactiva (&true;) o activa (&false;) la carga de entidades externas por las extensiones libxml (tales como , y ). - + @@ -58,9 +58,9 @@ &reftitle.returnvalues; - + Devuelve la configuración anterior. - + @@ -85,45 +85,6 @@ - - - - &reftitle.seealso; diff --git a/reference/mhash/functions/mhash-count.xml b/reference/mhash/functions/mhash-count.xml index ce2be1f2bd..003e0cda06 100644 --- a/reference/mhash/functions/mhash-count.xml +++ b/reference/mhash/functions/mhash-count.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1')] intmhash_count diff --git a/reference/mhash/functions/mhash-get-block-size.xml b/reference/mhash/functions/mhash-get-block-size.xml index f601ec8f12..78c16c7e2c 100644 --- a/reference/mhash/functions/mhash-get-block-size.xml +++ b/reference/mhash/functions/mhash-get-block-size.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1')] intfalsemhash_get_block_size intalgo diff --git a/reference/mhash/functions/mhash-get-hash-name.xml b/reference/mhash/functions/mhash-get-hash-name.xml index 47b04bb42f..395d946390 100644 --- a/reference/mhash/functions/mhash-get-hash-name.xml +++ b/reference/mhash/functions/mhash-get-hash-name.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1')] stringfalsemhash_get_hash_name intalgo @@ -62,7 +62,7 @@ 8.1.0 Esta función ha sido deprecada. - Utilizar las funciones hash_*() en su lugar. + Utilice las funciones hash_*() en su lugar. diff --git a/reference/mhash/functions/mhash-keygen-s2k.xml b/reference/mhash/functions/mhash-keygen-s2k.xml index cdbd53951a..dfd4a68eef 100644 --- a/reference/mhash/functions/mhash-keygen-s2k.xml +++ b/reference/mhash/functions/mhash-keygen-s2k.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1')] stringfalsemhash_keygen_s2k intalgo stringpassword @@ -33,7 +33,7 @@ Es importante tener en cuenta que las contraseñas proporcionadas por los usuarios no son recomendadas para generar claves criptográficas, - dado que los usuarios normales recuerdan contraseñas que pueden teclear. Estas contraseñas + dado que los usuarios normalmente eligen contraseñas que pueden teclear. Estas contraseñas utilizan solo 6 a 7 de los 8 bits de un carácter (o incluso menos). Se recomienda encarecidamente aplicar una función de transformación (como esta) a una contraseña de usuario. @@ -68,7 +68,7 @@ clave que se genera, a fin de crear claves diferentes. Dado que el parámetro salt debe ser conocido cuando se verifican las claves, es una - buena idea añadirlo a la clave. El parámetro salt debe tener + buena idea añadirle la clave. El parámetro salt debe tener una longitud de 8 bytes, y se rellenará con ceros si se proporciona uno de menor tamaño. diff --git a/reference/mhash/functions/mhash.xml b/reference/mhash/functions/mhash.xml index 6f2ceea4ad..5e9feb3f19 100644 --- a/reference/mhash/functions/mhash.xml +++ b/reference/mhash/functions/mhash.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1')] stringfalsemhash intalgo stringdata @@ -34,7 +34,7 @@ algo - El identificador del hash. Uno de los constantes + El identificador del hash. Una de las constantes MHASH_hashname. @@ -51,9 +51,9 @@ key - Especificado, la función devolverá el HMAC resultante. HMAC es un hash indexado - utilizado para la identificación de mensaje, o bien un simple informe de - mensaje, según la clave especificada. Algunos algoritmos soportados en + Si se especifica, la función devolverá en su lugar el HMAC resultante. + HMAC es un hash con clave para la autenticación de mensajes, o simplemente + un resumen de mensaje que depende de la clave especificada. Algunos algoritmos soportados en mhash no son compatibles con el modo HMAC. diff --git a/reference/misc/functions/hrtime.xml b/reference/misc/functions/hrtime.xml index c85a320b2b..a6ccdbf65e 100644 --- a/reference/misc/functions/hrtime.xml +++ b/reference/misc/functions/hrtime.xml @@ -1,5 +1,5 @@ - + @@ -39,14 +39,38 @@ &reftitle.returnvalues; - Devuelve un array de enteros en la forma [segundos, nanosegundos], si el - argumento as_number es falso. De lo contrario, los nanosegundos + Devuelve un array de integers en la forma [segundos, nanosegundos], si el + parámetro as_number es falso. De lo contrario, los nanosegundos son devueltos como int (plataformas de 64 bits) o como float (plataformas de 32 bits). Devuelve &false; en caso de error. + + &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.5.0 + + En macOS, la implementación utiliza ahora + clock_gettime_nsec_np(CLOCK_UPTIME_RAW) en lugar de + mach_absolute_time(). + + + + + + + &reftitle.examples; @@ -80,6 +104,7 @@ Array La extensión de Gestión del tiempo de alta resolución microtime + time_nanosleep diff --git a/reference/mysqli/mysqli/get-client-info.xml b/reference/mysqli/mysqli/get-client-info.xml index c13a00609f..186c0ecb3a 100644 --- a/reference/mysqli/mysqli/get-client-info.xml +++ b/reference/mysqli/mysqli/get-client-info.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &style.oop; stringmysqli->client_info - #[\Deprecated] + #[\Deprecated(since: '8.1', message: 'use mysqli_get_client_info() instead')] public stringmysqli::get_client_info @@ -36,7 +36,7 @@ &reftitle.returnvalues; - Un &string; que representa la versión del cliente utilizado por la extensión MySQL. + Un &string; que representa la versión de la biblioteca cliente MySQL. @@ -79,7 +79,7 @@ diff --git a/reference/mysqli/mysqli/init.xml b/reference/mysqli/mysqli/init.xml index c57ff143dd..cc1352c2f4 100644 --- a/reference/mysqli/mysqli/init.xml +++ b/reference/mysqli/mysqli/init.xml @@ -1,5 +1,5 @@ - + @@ -12,7 +12,7 @@ &reftitle.description; &style.oop; - #[\Deprecated] + #[\Deprecated(since: '8.1', message: 'replace calls to parent::init() with parent::__construct()')] public boolnullmysqli::init diff --git a/reference/mysqli/mysqli/kill.xml b/reference/mysqli/mysqli/kill.xml index 4679be1ca0..ffc04e9a10 100644 --- a/reference/mysqli/mysqli/kill.xml +++ b/reference/mysqli/mysqli/kill.xml @@ -1,5 +1,5 @@ - + @@ -16,13 +16,13 @@ &reftitle.description; &style.oop; - #[\Deprecated] + #[\Deprecated(since: '8.4', message: 'use KILL CONNECTION/QUERY SQL statement instead')] public boolmysqli::kill intprocess_id &style.procedural; - #[\Deprecated] + #[\Deprecated(since: '8.4', message: 'use KILL CONNECTION/QUERY SQL statement instead')] boolmysqli_kill mysqlimysql intprocess_id @@ -35,7 +35,7 @@ Para detener una consulta en ejecución, se debe utilizar el comando SQL - KILL QUERY process_id. + KILL QUERY processid. diff --git a/reference/mysqli/mysqli/ping.xml b/reference/mysqli/mysqli/ping.xml index cbc9dd9cc1..dce0476ac3 100644 --- a/reference/mysqli/mysqli/ping.xml +++ b/reference/mysqli/mysqli/ping.xml @@ -1,5 +1,5 @@ - + @@ -16,13 +16,13 @@ &reftitle.description; &style.oop; - #[\Deprecated] + #[\Deprecated(since: '8.4', message: 'because the reconnect feature has been removed in PHP 8.2 and this method is now redundant')] public boolmysqli::ping &style.procedural; - #[\Deprecated] + #[\Deprecated(since: '8.4', message: 'because the reconnect feature has been removed in PHP 8.2 and this function is now redundant')] boolmysqli_ping mysqlimysql @@ -108,7 +108,7 @@ if ($mysqli->connect_errno) { exit(); } -/* Verificación si la conexión sigue activa */ +/* Verificación de si la conexión sigue activa */ if ($mysqli->ping()) { printf ("¡La conexión está bien!\n"); } else { @@ -132,7 +132,7 @@ if (mysqli_connect_errno()) { exit(); } -/* Verificación si la conexión sigue activa */ +/* Verificación de si la conexión sigue activa */ if (mysqli_ping($link)) { printf ("¡La conexión está bien!\n"); } else { @@ -147,7 +147,7 @@ mysqli_close($link); &examples.outputs; diff --git a/reference/mysqli/mysqli/refresh.xml b/reference/mysqli/mysqli/refresh.xml index f50f11b95e..ae2c9ab7cd 100644 --- a/reference/mysqli/mysqli/refresh.xml +++ b/reference/mysqli/mysqli/refresh.xml @@ -1,5 +1,5 @@ - + @@ -16,13 +16,13 @@ &reftitle.description; &style.oop; - #[\Deprecated] + #[\Deprecated(since: '8.4', message: 'use FLUSH SQL statement instead')] public boolmysqli::refresh intflags &style.procedural; - #[\Deprecated] + #[\Deprecated(since: '8.4', message: 'use FLUSH SQL statement instead')] boolmysqli_refresh mysqlimysql intflags diff --git a/reference/openssl/functions/openssl-free-key.xml b/reference/openssl/functions/openssl-free-key.xml index 0f6df51bd9..354a713edd 100644 --- a/reference/openssl/functions/openssl-free-key.xml +++ b/reference/openssl/functions/openssl-free-key.xml @@ -1,11 +1,11 @@ - + openssl_free_key - Libera los recursos + Libera el recurso de clave @@ -15,13 +15,13 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'as OpenSSLAsymmetricKey objects are freed automatically')] voidopenssl_free_key OpenSSLAsymmetricKeykey - openssl_free_key libera las claves - asociadas a key de la memoria. + openssl_free_key libera la clave + asociada a key de la memoria. diff --git a/reference/openssl/functions/openssl-password-hash.xml b/reference/openssl/functions/openssl-password-hash.xml index 9d7e250b84..c9a7184d89 100644 --- a/reference/openssl/functions/openssl-password-hash.xml +++ b/reference/openssl/functions/openssl-password-hash.xml @@ -1,5 +1,5 @@ - + openssl_password_hash @@ -11,7 +11,7 @@ stringopenssl_password_hash stringalgo - stringpassword + #[\SensitiveParameter]stringpassword arrayoptions[] diff --git a/reference/openssl/functions/openssl-password-verify.xml b/reference/openssl/functions/openssl-password-verify.xml index f002422d77..ed1c06edcf 100644 --- a/reference/openssl/functions/openssl-password-verify.xml +++ b/reference/openssl/functions/openssl-password-verify.xml @@ -1,5 +1,5 @@ - + openssl_password_verify @@ -11,7 +11,7 @@ boolopenssl_password_verify stringalgo - stringpassword + #[\SensitiveParameter]stringpassword stringhash diff --git a/reference/openssl/functions/openssl-pkey-free.xml b/reference/openssl/functions/openssl-pkey-free.xml index e76729cb53..10e81a34cb 100644 --- a/reference/openssl/functions/openssl-pkey-free.xml +++ b/reference/openssl/functions/openssl-pkey-free.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'as OpenSSLAsymmetricKey objects are freed automatically')] voidopenssl_pkey_free OpenSSLAsymmetricKeykey diff --git a/reference/openssl/functions/openssl-x509-free.xml b/reference/openssl/functions/openssl-x509-free.xml index 5626f36a8c..29a6c38952 100644 --- a/reference/openssl/functions/openssl-x509-free.xml +++ b/reference/openssl/functions/openssl-x509-free.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'as OpenSSLCertificate objects are freed automatically')] voidopenssl_x509_free OpenSSLCertificatecertificate diff --git a/reference/pgsql/functions/pg-change-password.xml b/reference/pgsql/functions/pg-change-password.xml index 464e3588ae..7fbd4173bc 100644 --- a/reference/pgsql/functions/pg-change-password.xml +++ b/reference/pgsql/functions/pg-change-password.xml @@ -1,5 +1,5 @@ - + pg_change_password @@ -12,7 +12,7 @@ boolpg_change_password PgSql\Connectionconnection stringuser - stringpassword + #[\SensitiveParameter]stringpassword pg_change_password cambia la contraseña de un diff --git a/reference/random/functions/lcg-value.xml b/reference/random/functions/lcg-value.xml index 62303bd68d..82818acd08 100644 --- a/reference/random/functions/lcg-value.xml +++ b/reference/random/functions/lcg-value.xml @@ -1,6 +1,6 @@ - + @@ -16,9 +16,9 @@ &reftitle.description; - #[\Deprecated] - floatlcg_value - + #[\Deprecated(since: '8.4', message: "use \\Random\\Randomizer::getFloat() instead")] + floatlcg_value + lcg_value devuelve un número pseudoaleatorio, @@ -79,7 +79,7 @@ - + &reftitle.seealso; diff --git a/reference/reflection/reflectionfunction/isdisabled.xml b/reference/reflection/reflectionfunction/isdisabled.xml index 225113c617..6036bcfd63 100644 --- a/reference/reflection/reflectionfunction/isdisabled.xml +++ b/reference/reflection/reflectionfunction/isdisabled.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: "as ReflectionFunction can no longer be constructed for disabled functions")] public boolReflectionFunction::isDisabled diff --git a/reference/reflection/reflectionmethod/setaccessible.xml b/reference/reflection/reflectionmethod/setaccessible.xml index 2a17bce5d0..d49a56abf3 100644 --- a/reference/reflection/reflectionmethod/setaccessible.xml +++ b/reference/reflection/reflectionmethod/setaccessible.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "as it has no effect since PHP 8.1")] public voidReflectionMethod::setAccessible boolaccessible @@ -24,7 +24,7 @@ - A partir de PHP 8.1.0, la llamada a este método no tiene ningún efecto; todas las propiedades son accesibles por defecto. + A partir de PHP 8.1.0, la llamada a este método no tiene ningún efecto; todos los métodos son invocables por defecto. @@ -66,7 +66,7 @@ 8.5.0 - Este método ha quedado obsoleto, ya que no tiene efecto. + Este método ha quedado obsoleto, puesto que ya no tiene efecto. @@ -95,8 +95,10 @@ class MyClass return 'bar'; } } + $method = new ReflectionMethod("MyClass", "foo"); $method->setAccessible(true); + $obj = new MyClass(); echo $method->invoke($obj); echo $obj->foo(); diff --git a/reference/reflection/reflectionparameter/getclass.xml b/reference/reflection/reflectionparameter/getclass.xml index 41a2cb4987..0eecfe06b2 100644 --- a/reference/reflection/reflectionparameter/getclass.xml +++ b/reference/reflection/reflectionparameter/getclass.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: "use ReflectionParameter::getType() instead")] public ReflectionClassnullReflectionParameter::getClass diff --git a/reference/reflection/reflectionparameter/isarray.xml b/reference/reflection/reflectionparameter/isarray.xml index 1aa7a662c0..a83f58ca12 100644 --- a/reference/reflection/reflectionparameter/isarray.xml +++ b/reference/reflection/reflectionparameter/isarray.xml @@ -1,5 +1,5 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: "use ReflectionParameter::getType() instead")] public boolReflectionParameter::isArray @@ -32,7 +32,7 @@ &reftitle.returnvalues; - &true; si el parámetro espera un array, &false; en caso contrario. + &true; si se espera un array, &false; en caso contrario. @@ -65,7 +65,7 @@ Equivalente en PHP 8.0.0 - A partir de PHP 8.0.0, el siguiente código indica si un tipo soporta + A partir de PHP 8.0.0, el siguiente código indica si un tipo declara arrays, incluyendo aquellos que forman parte de una unión. diff --git a/reference/reflection/reflectionparameter/iscallable.xml b/reference/reflection/reflectionparameter/iscallable.xml index 6ea808f937..b9c97bbfea 100644 --- a/reference/reflection/reflectionparameter/iscallable.xml +++ b/reference/reflection/reflectionparameter/iscallable.xml @@ -1,5 +1,5 @@ - + @@ -9,13 +9,13 @@ &warn.deprecated.function-8-0-0; - Ver el ejemplo a continuación para un método alternativo para obtener esta información. + Véase el ejemplo a continuación para una forma alternativa de obtener esta información. &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: "use ReflectionParameter::getType() instead")] public boolReflectionParameter::isCallable diff --git a/reference/reflection/reflectionproperty/setaccessible.xml b/reference/reflection/reflectionproperty/setaccessible.xml index bffaf238f1..2ea3364b79 100644 --- a/reference/reflection/reflectionproperty/setaccessible.xml +++ b/reference/reflection/reflectionproperty/setaccessible.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "as it has no effect since PHP 8.1")] public voidReflectionProperty::setAccessible boolaccessible @@ -25,7 +25,7 @@ - A partir de PHP 8.1.0, la llamada a este método no tiene ningún efecto; todas las propiedades son accesibles por omisión. + A partir de PHP 8.1.0, la llamada a este método no tiene ningún efecto; todas las propiedades son accesibles por defecto. @@ -67,14 +67,14 @@ 8.5.0 - Este método ha quedado obsoleto, ya que no tiene efecto. + Este método ha quedado obsoleto, puesto que ya no tiene efecto. 8.1.0 La llamada a este método no tiene ningún efecto; todas las propiedades - son accesibles por omisión. + son accesibles por defecto. @@ -93,8 +93,10 @@ class MyClass { private $foo = 'bar'; } + $property = new ReflectionProperty("MyClass", "foo"); $property->setAccessible(true); + $obj = new MyClass(); echo $property->getValue($obj); echo $obj->foo; diff --git a/reference/shmop/functions/shmop-close.xml b/reference/shmop/functions/shmop-close.xml index b6de75e500..27e89a8829 100644 --- a/reference/shmop/functions/shmop-close.xml +++ b/reference/shmop/functions/shmop-close.xml @@ -1,8 +1,8 @@ - + - + shmop_close Cierra un bloque de memoria compartida @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'as Shmop objects are freed automatically')] voidshmop_close Shmopshmop @@ -60,7 +60,7 @@ 8.0.0 - Esta función ha sido declarada obsoleta, ya que no tiene ningún efecto. + Esta función ha sido declarada obsoleta, puesto que ya no tiene ningún efecto. diff --git a/reference/spl/arrayiterator/construct.xml b/reference/spl/arrayiterator/construct.xml index 58286058ff..8f90f48945 100644 --- a/reference/spl/arrayiterator/construct.xml +++ b/reference/spl/arrayiterator/construct.xml @@ -1,5 +1,5 @@ - + @@ -15,7 +15,7 @@ intflags0 - Construye un objeto ArrayIterator. + Construye un object ArrayIterator. &warn.undocumented.func; @@ -29,16 +29,17 @@ array - - El array o objecto a ser iterado. - + + El array u objeto a iterar. + Pasar un object está deprecado a partir de PHP 8.5.0. + flags - Banderas para controlar el comportamiento del objeto ArrayIterator. + Flags para controlar el comportamiento del objeto ArrayIterator. Véase ArrayIterator::setFlags. @@ -47,13 +48,51 @@ + + &reftitle.errors; + + A partir de PHP 8.5.0, lanza una + InvalidArgumentException si + array es una enumeración. + + + + + &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.5.0 + + Pasar una enumeración como array ahora lanza una + InvalidArgumentException. + + + + 8.5.0 + + Pasar un object como array está deprecado. + + + + + + + &reftitle.seealso; - - - ArrayIterator::getArrayCopy - - + + ArrayIterator::getArrayCopy + ArrayIterator::setFlags + ArrayObject::__construct + diff --git a/reference/spl/arrayobject/construct.xml b/reference/spl/arrayobject/construct.xml index 461199af5b..119b13e8a2 100644 --- a/reference/spl/arrayobject/construct.xml +++ b/reference/spl/arrayobject/construct.xml @@ -1,5 +1,5 @@ - + @@ -18,6 +18,14 @@ Construye un nuevo objeto array. + + + A partir de PHP 8.5.0, pasar una enumeración como parámetro + array lanza una InvalidArgumentException. + Modificar las propiedades $name o $value + de una enumeración rompería las suposiciones del motor. + + @@ -27,19 +35,20 @@ array - + El parámetro array acepta - un &array; o un &object;. - + un array o un object. + Pasar un object está deprecado a partir de PHP 8.5.0. + flags - Opción de control del comportamiento del + Flags para controlar el comportamiento del objeto ArrayObject. - Ver el método ArrayObject::setFlags. + Véase ArrayObject::setFlags. @@ -57,6 +66,44 @@ + + &reftitle.errors; + + A partir de PHP 8.5.0, lanza una + InvalidArgumentException si + array es una enumeración. + + + + + &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.5.0 + + Pasar una enumeración como array ahora lanza una + InvalidArgumentException. + + + + 8.5.0 + + Pasar un object como array está deprecado. + + + + + + + &reftitle.examples; @@ -66,12 +113,11 @@ 'one', '2' => 'two', '3' => 'three' - ]; +]; $arrayobject = new ArrayObject($array); @@ -102,11 +148,11 @@ object(ArrayObject)#1 (1) { &reftitle.seealso; - - - ArrayObject::setflags - - + + ArrayObject::setFlags + ArrayObject::getArrayCopy + ArrayIterator::__construct + diff --git a/reference/spl/splfixedarray/wakeup.xml b/reference/spl/splfixedarray/wakeup.xml index a8f2b4f60b..c544d44e52 100644 --- a/reference/spl/splfixedarray/wakeup.xml +++ b/reference/spl/splfixedarray/wakeup.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.4', message: 'this method is obsolete, as serialization hooks are provided by __unserialize() and __serialize()')] public voidSplFixedArray::__wakeup diff --git a/reference/spl/splobjectstorage/attach.xml b/reference/spl/splobjectstorage/attach.xml index 851b900398..7db8e3e168 100644 --- a/reference/spl/splobjectstorage/attach.xml +++ b/reference/spl/splobjectstorage/attach.xml @@ -1,5 +1,5 @@ - + @@ -14,13 +14,13 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "use method SplObjectStorage::offsetSet() instead")] public voidSplObjectStorage::attach objectobject mixedinfo&null; - Añade un object dentro del almacenamiento, y opcionalmente se asocian a algunos datos. + Añade un object dentro del almacenamiento, y opcionalmente lo asocia a algunos datos. Este método es un alias de SplObjectStorage::offsetSet. diff --git a/reference/spl/splobjectstorage/contains.xml b/reference/spl/splobjectstorage/contains.xml index f56670923e..98e43f84c4 100644 --- a/reference/spl/splobjectstorage/contains.xml +++ b/reference/spl/splobjectstorage/contains.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "use method SplObjectStorage::offsetExists() instead")] public boolSplObjectStorage::contains objectobject diff --git a/reference/spl/splobjectstorage/detach.xml b/reference/spl/splobjectstorage/detach.xml index 8ae2a9c9e3..5d909901a7 100644 --- a/reference/spl/splobjectstorage/detach.xml +++ b/reference/spl/splobjectstorage/detach.xml @@ -1,5 +1,5 @@ - + @@ -14,12 +14,12 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "use method SplObjectStorage::offsetUnset() instead")] public voidSplObjectStorage::detach objectobject - Quita un object de el almacenamiento. + Quita un object del almacenamiento. diff --git a/reference/strings/functions/utf8-decode.xml b/reference/strings/functions/utf8-decode.xml index 2df4a39b62..bf58b3fc26 100644 --- a/reference/strings/functions/utf8-decode.xml +++ b/reference/strings/functions/utf8-decode.xml @@ -1,5 +1,5 @@ - + @@ -16,7 +16,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.2', message: 'visit the php.net documentation for various alternatives')] stringutf8_decode stringstring @@ -26,15 +26,15 @@ UTF-8, y la convierte al formato ISO-8859-1. Los bytes en la string que no son válidos en UTF-8 y los caracteres UTF-8 - que no existen en ISO-8859-1 (que son, los caracteres + que no existen en ISO-8859-1 (es decir, los puntos de código por encima de U+00FF) son reemplazados por ?. Numerosas páginas web marcadas como utilizando la codificación de caracteres - ISO-8859-1 utilizan efectivamente una codificación similar - a Windows-1252, y los navegadores web interpretarán + ISO-8859-1 utilizan en realidad la codificación similar + Windows-1252, y los navegadores web interpretarán las páginas web ISO-8859-1 como Windows-1252. Las características adicionales de Windows-1252 son caracteres imprimibles, @@ -139,7 +139,7 @@ string(1) "?" - Notas + &reftitle.notes; Obsolescencia y alternativas @@ -166,7 +166,7 @@ $utf8_string = "\xE2\x82\xAC"; // '€' (signo del euro) en UTF-8 (no presente e $windows_1252_string = mb_convert_encoding($utf8_string, 'Windows-1252', 'UTF-8'); echo bin2hex($windows_1252_string), "\n"; ?> - ]]> +]]> &example.outputs; @@ -201,7 +201,7 @@ echo bin2hex($iso8859_1_string), "\n"; $iso8859_1_string = UConverter::transcode($utf8_string, 'ISO-8859-1', 'UTF8'); echo bin2hex($iso8859_1_string), "\n"; ?> - ]]> +]]> &example.outputs; @@ -225,7 +225,7 @@ $iso8859_1_string = UConverter::transcode( ); var_dump($iso8859_1_string); ?> - ]]> +]]> &example.outputs; diff --git a/reference/strings/functions/utf8-encode.xml b/reference/strings/functions/utf8-encode.xml index fccf0b4434..15ac1fa344 100644 --- a/reference/strings/functions/utf8-encode.xml +++ b/reference/strings/functions/utf8-encode.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.2', message: 'visit the php.net documentation for various alternatives')] stringutf8_encode stringstring @@ -34,8 +34,8 @@ Muchas páginas web marcadas como que utilizan la codificación de caracteres - ISO-8859-1 utilizan efectivamente una codificación similar - a Windows-1252, y los navegadores web interpretarán + ISO-8859-1 utilizan en realidad la codificación similar + Windows-1252, y los navegadores web interpretarán las páginas web ISO-8859-1 como Windows-1252. Las características adicionales de Windows-1252 son caracteres imprimibles, @@ -93,9 +93,9 @@ 7.2.0 - Esta función fue movida al núcleo de PHP, - anteriormente, era necesario instalar la extensión XML - para utilizarla. + Esta función fue movida de la extensión XML al núcleo de PHP. + En versiones anteriores, solo estaba disponible si la extensión XML + estaba instalada. @@ -128,7 +128,7 @@ echo bin2hex($utf8_string), "\n"; - Notas + &reftitle.notes; Obsolescencia y alternativas @@ -155,7 +155,7 @@ $windows_1252_string = "\x80"; // '€' (signo euro) en Windows-1252, pero no en $utf8_string = mb_convert_encoding($windows_1252_string, 'UTF-8', 'Windows-1252'); echo bin2hex($utf8_string), "\n"; ?> - ]]> +]]> &example.outputs; @@ -191,7 +191,7 @@ echo bin2hex($utf8_string), "\n"; $utf8_string = iconv('ISO-8859-1', 'UTF-8', $iso8859_1_string); echo bin2hex($utf8_string), "\n"; ?> - ]]> +]]> &example.outputs; diff --git a/reference/uodbc/functions/odbc-result-all.xml b/reference/uodbc/functions/odbc-result-all.xml index af70867a9c..8dd013a1de 100644 --- a/reference/uodbc/functions/odbc-result-all.xml +++ b/reference/uodbc/functions/odbc-result-all.xml @@ -1,5 +1,5 @@ - + @@ -14,14 +14,14 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.1')] intfalseodbc_result_all Odbc\Resultstatement stringformat"" Muestra todas las filas de un resultado producido por - odbc_exec. La visualización se realiza en formato HTML. + odbc_exec. La visualización se realiza en formato de tabla HTML. Los datos no están escapados. diff --git a/reference/xml/functions/xml-parser-free.xml b/reference/xml/functions/xml-parser-free.xml index aa7ae2003b..60225a7751 100644 --- a/reference/xml/functions/xml-parser-free.xml +++ b/reference/xml/functions/xml-parser-free.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.5', message: "as it has no effect since PHP 8.0")] boolxml_parser_free XMLParserparser @@ -29,8 +29,8 @@ Anterior a PHP 8.0.0, además de llamar a la función xml_parser_free al final del análisis, era necesario eliminar explícitamente la referencia al parámetro parser para evitar fugas de memoria, - si el recurso analizado es referenciado desde un objeto, y este objeto hace referencia - al recurso analizado. + si el recurso del analizador es referenciado desde un objeto, y este objeto hace referencia + a dicho recurso del analizador. @@ -43,7 +43,7 @@ parser - Una referencia a un analizador XML. + Una referencia al analizador XML a liberar. diff --git a/reference/xml/functions/xml-set-object.xml b/reference/xml/functions/xml-set-object.xml index fd029991b3..3992aa7e6e 100644 --- a/reference/xml/functions/xml-set-object.xml +++ b/reference/xml/functions/xml-set-object.xml @@ -1,10 +1,10 @@ - + xml_set_object - Configura un objeto como analizador XML + Utiliza el analizador XML dentro de un objeto @@ -14,7 +14,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.4', message: 'provide a proper method callable to xml_set_*_handler() functions')] truexml_set_object XMLParserparser objectobject diff --git a/reference/zip/functions/zip-close.xml b/reference/zip/functions/zip-close.xml index 4906ee072a..cbe3ffa62c 100644 --- a/reference/zip/functions/zip-close.xml +++ b/reference/zip/functions/zip-close.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'use ZipArchive::close() instead')] voidzip_close resourcezip diff --git a/reference/zip/functions/zip-entry-close.xml b/reference/zip/functions/zip-entry-close.xml index 354a43641c..6435c86fa1 100644 --- a/reference/zip/functions/zip-entry-close.xml +++ b/reference/zip/functions/zip-entry-close.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0')] boolzip_entry_close resourcezip_entry diff --git a/reference/zip/functions/zip-entry-compressedsize.xml b/reference/zip/functions/zip-entry-compressedsize.xml index 60d92abcd8..0251ee38ae 100644 --- a/reference/zip/functions/zip-entry-compressedsize.xml +++ b/reference/zip/functions/zip-entry-compressedsize.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'use ZipArchive::statIndex() instead')] intfalsezip_entry_compressedsize resourcezip_entry diff --git a/reference/zip/functions/zip-entry-compressionmethod.xml b/reference/zip/functions/zip-entry-compressionmethod.xml index 0802b7e3d4..eed5ee0bbf 100644 --- a/reference/zip/functions/zip-entry-compressionmethod.xml +++ b/reference/zip/functions/zip-entry-compressionmethod.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'use ZipArchive::statIndex() instead')] stringfalsezip_entry_compressionmethod resourcezip_entry diff --git a/reference/zip/functions/zip-entry-filesize.xml b/reference/zip/functions/zip-entry-filesize.xml index 37481e3959..3305f1099a 100644 --- a/reference/zip/functions/zip-entry-filesize.xml +++ b/reference/zip/functions/zip-entry-filesize.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'use ZipArchive::statIndex() instead')] intfalsezip_entry_filesize resourcezip_entry diff --git a/reference/zip/functions/zip-entry-name.xml b/reference/zip/functions/zip-entry-name.xml index 1fb6699035..86838e4c99 100644 --- a/reference/zip/functions/zip-entry-name.xml +++ b/reference/zip/functions/zip-entry-name.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'use ZipArchive::statIndex() instead')] stringfalsezip_entry_name resourcezip_entry diff --git a/reference/zip/functions/zip-entry-open.xml b/reference/zip/functions/zip-entry-open.xml index 093af6e776..3082ad170d 100644 --- a/reference/zip/functions/zip-entry-open.xml +++ b/reference/zip/functions/zip-entry-open.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0')] boolzip_entry_open resourcezip_dp resourcezip_entry @@ -52,7 +52,7 @@ mode - Todos los métodos especificados en la documentación + Cualquiera de los modos especificados en la documentación de la función fopen. @@ -75,9 +75,9 @@ A diferencia de fopen y otras funciones - de archivos, el valor devuelto por zip_entry_open + similares, el valor devuelto por zip_entry_open solo indica el resultado de la operación y no es necesario - para la lectura o el cierre del archivo del directorio de archivo. + para la lectura o el cierre del directorio de archivo. diff --git a/reference/zip/functions/zip-entry-read.xml b/reference/zip/functions/zip-entry-read.xml index 5c336cc0e6..2168b862e6 100644 --- a/reference/zip/functions/zip-entry-read.xml +++ b/reference/zip/functions/zip-entry-read.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'use ZipArchive::getFromIndex() instead')] stringfalsezip_entry_read resourcezip_entry intlen1024 diff --git a/reference/zip/functions/zip-open.xml b/reference/zip/functions/zip-open.xml index 6ec5f12ddd..8c66fe96e1 100644 --- a/reference/zip/functions/zip-open.xml +++ b/reference/zip/functions/zip-open.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'use ZipArchive::open() instead')] resourceintfalsezip_open stringfilename diff --git a/reference/zip/functions/zip-read.xml b/reference/zip/functions/zip-read.xml index 8e434d25ff..7ce7b825ab 100644 --- a/reference/zip/functions/zip-read.xml +++ b/reference/zip/functions/zip-read.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,7 @@ &reftitle.description; - #[\Deprecated] + #[\Deprecated(since: '8.0', message: 'use ZipArchive::statIndex() instead')] resourcefalsezip_read resourcezip