<?php

return [
    'common_header' => 'PHP 8.4 est une mise à jour majeure du langage PHP. Elle inclut de nombreuses nouvelles fonctionnalités, telles que les hooks de propriétés, la visibilité asymétrique, une API DOM mise à jour, des améliorations de performances, des corrections de bugs et un nettoyage général.',
    'documentation' => 'Doc',
    'main_title' => 'Released!',
    'main_subtitle' => 'PHP 8.4 est une mise à jour majeure du langage PHP.<br class="display-none-md"> Elle introduit de nombreuses nouvelles fonctionnalités, telles que les hooks de propriétés, la visibilité asymétrique, une API DOM mise à jour, des améliorations de performances, des corrections de bugs et un nettoyage général.',
    'upgrade_now' => 'Migrer vers PHP 8.4 maintenant!',

    'property_hooks_title' => 'Hooks de propriété',
    'property_hooks_description' => 'Les hooks de propriété offrent un support pour les propriétés calculées, compréhensibles nativement par les IDE et les outils d\'analyse statique, sans avoir besoin d\'écrire des commentaires docblock susceptibles de devenir obsolètes. De plus, ils permettent un pré- ou post-traitement fiable des valeurs, sans avoir à vérifier l\'existence d\'un getter ou d\'un setter correspondant dans la classe.',
    'asymmetric_visibility_title' => 'Visibilité asymétrique',
    'asymmetric_visibility_description' => 'La portée d\'écriture d\'une propriété peut désormais être contrôlée indépendamment de sa portée de lecture, réduisant ainsi le besoin de méthodes getter redondantes pour exposer la valeur d\'une propriété sans permettre sa modification depuis l\'extérieur d\'une classe.',
    'deprecated_attribute_title' => 'L\'attribut <code>#[\Deprecated]</code>',
    'deprecated_attribute_description' => 'Le nouvel attribut <code>#[\Deprecated]</code> rend le mécanisme d\'obsolescence existant de PHP disponible pour les fonctions, méthodes et constantes de classe définies par l\'utilisateur.',
    'dom_additions_html5_title' => 'Nouvelles fonctionnalités de l\'extension ext-dom et prise en charge de HTML5.',
    'dom_additions_html5_description' => '<p>Nouvelle API DOM offrant une prise en charge conforme aux standards pour l\'analyse des documents HTML5, corrigeant plusieurs bogues de conformité de longue date dans le comportement des fonctionnalités DOM et ajoutant plusieurs fonctions pour faciliter la manipulation des documents.</p><p>La nouvelle API DOM est disponible dans l\'espace de noms <code>Dom</code>. Les documents utilisant cette API peuvent être créés à l\'aide des classes <code>Dom\HTMLDocument</code> et <code>Dom\XMLDocument</code>.</p>',
    'bcmath_title' => 'API objet pour BCMath',
    'bcmath_description' => '<p>BCMath vous permet de travailler avec des nombres flottants de précision arbitraire en PHP. Avec cette version, vous pouvez bénéficier du style orienté objet et de la surcharge des opérateurs pour utiliser les nombres BCMath.</p><p>Cela signifie que vous pouvez désormais utiliser les opérateurs standard avec les objets <code>BcMath\Number</code>, ainsi que toutes les fonctions <code>bc*</code>.</p><p>Ces objets sont immuables et implémentent l\'interface <code>Stringable</code>, afin d\'être utilisés dans des chaînes de caractères tels que <code>echo $num</code>.</p>',
    'new_array_find_title' => 'Nouvelles fonctions <code>array_*()</code>',
    'new_array_find_description' => 'Les nouvelles fonctions <a href="/manual/fr/function.array-find.php"><code>array_find()</code></a>, <a href="/manual/fr/function.array-find-key.php"><code>array_find_key()</code></a>, <a href="/manual/fr/function.array-any.php"><code>array_any()</code></a> et <a href="/manual/fr/function.array-all.php"><code>array_all()</code></a> sont désormais disponibles.',
    'pdo_driver_specific_subclasses_title' => 'Parseurs SQL spécifiques au pilote PDO',
    'pdo_driver_specific_subclasses_description' => 'De nouvelles sous-classes <code>Pdo\Dblib</code>, <code>Pdo\Firebird</code>, <code>Pdo\MySql</code>, <code>Pdo\Odbc</code>, <code>Pdo\Pgsql</code> et <code>Pdo\Sqlite</code> de <code>PDO</code> sont désormais disponibles.',
    'new_without_parentheses_title' => '<code>new MyClass()->method()</code> sans parenthèses.',
    'new_without_parentheses_description' => 'Les propriétés et méthodes d\'un objet nouvellement instancié peuvent désormais être accessibles sans entourer l\'expression <code>new</code> entre parenthèses.',

    'new_classes_title' => 'Nouvelles classes, interfaces et fonctions',
    'new_lazy_objects' => 'Nouveaux <a href="/manual/fr/language.oop5.lazy-objects.php">objets à initialisation différée</a>.',
    'new_jit_implementation' => 'Nouvelle implémentation JIT basée sur le framework IR.',
    'new_core_functions' => 'Nouvelle fonction <code>request_parse_body()</code>.',
    'new_bcmath_functions' => 'Nouvelles fonctions <code>bcceil()</code>, <code>bcdivmod()</code>, <code>bcfloor()</code>, et <code>bcround()</code>.',
    'new_round_modes' => 'Nouvelle énumération <code>RoundingMode</code> pour <code>round()</code> avec 4 nouveaux modes d\'arrondi <code>TowardsZero</code>, <code>AwayFromZero</code>, <code>NegativeInfinity</code>, et <code>PositiveInfinity</code>.',
    'new_date_functions' => 'Nouvelle méthodes <code>DateTime::createFromTimestamp()</code>, <code>DateTime::getMicrosecond()</code>, <code>DateTime::setMicrosecond()</code>, <code>DateTimeImmutable::createFromTimestamp()</code>, <code>DateTimeImmutable::getMicrosecond()</code>, et <code>DateTimeImmutable::setMicrosecond()</code>.',
    'new_mb_functions' => 'Nouvelles fonctions <code>mb_trim()</code>, <code>mb_ltrim()</code>, <code>mb_rtrim()</code>, <code>mb_ucfirst()</code>, et <code>mb_lcfirst()</code>.',
    'new_pcntl_functions' => 'Nouvelles fonctions <code>pcntl_getcpu()</code>, <code>pcntl_getcpuaffinity()</code>, <code>pcntl_getqos_class()</code>, <code>pcntl_setns()</code>, et <code>pcntl_waitid()</code>.',
    'new_reflection_functions' => 'Nouvelles méthodes <code>ReflectionClassConstant::isDeprecated()</code>, <code>ReflectionGenerator::isClosed()</code>, et <code>ReflectionProperty::isDynamic()</code>.',
    'new_standard_functions' => 'Nouvelles fonctions <code>http_get_last_response_headers()</code>, <code>http_clear_last_response_headers()</code>, et <code>fpow()</code>.',
    'new_xml_functions' => 'Nouvelles méthodes <code>XMLReader::fromStream()</code>, <code>XMLReader::fromUri()</code>, <code>XMLReader::fromString()</code>, <code>XMLWriter::toStream()</code>, <code>XMLWriter::toUri()</code>, et <code>XMLWriter::toMemory()</code>.',
    'new_grapheme_function' => 'Nouvelle fonction <code>grapheme_str_split()</code>.',

    'bc_title' => 'Obsolescence et changements non rétrocompatibles',
    'bc_pecl' => 'Les extensions IMAP, OCI8, PDO_OCI, et pspell ont été dissociées et transférées à PECL.',
    'bc_nullable_parameter_types' => 'Les types de paramètres implicitement nullables sont désormais obsolètes.',
    'bc_classname' => 'L\'utilisation de <code>_</code> comme nom de classe est désormais obsolète.',
    'bc_zero_raised_to_negative_number' => 'L\'élévation de zéro à la puissance d\'un nombre négatif est désormais obsolète.',
    'bc_gmp' => 'La classe <code>GMP</code> est désormais final.',
    'bc_round' => 'Le passage d\'un mode invalide à <code>round()</code> déclenche une <code>ValueError</code>.',
    'bc_typed_constants' => 'Les constantes de classe des extensions <code>date</code>, <code>intl</code>, <code>pdo</code>, <code>reflection</code>, <code>spl</code>, <code>sqlite</code>, <code>xmlreader</code> sont désormais typées.',
    'bc_mysqli_constants' => 'Les constantes <code>MYSQLI_SET_CHARSET_DIR</code>, <code>MYSQLI_STMT_ATTR_PREFETCH_ROWS</code>, <code>MYSQLI_CURSOR_TYPE_FOR_UPDATE</code>, <code>MYSQLI_CURSOR_TYPE_SCROLLABLE</code>, et <code>MYSQLI_TYPE_INTERVAL</code> ont été supprimées.',
    'bc_mysqli_functions' => 'Les fonctions <code>mysqli_ping()</code>, <code>mysqli_kill()</code>, <code>mysqli_refresh()</code>, méthodes <code>mysqli::ping()</code>, <code>mysqli::kill()</code>, <code>mysqli::refresh()</code>, et constantes <code>MYSQLI_REFRESH_*</code> sont désormais obsolètes.',
    'bc_standard' => '<code>stream_bucket_make_writeable()</code> et <code>stream_bucket_new()</code> renvoient désormais une instance de <code>StreamBucket</code> au lieu de <code>stdClass</code>.',
    'bc_core' => '<a href="/manual/fr/migration84.incompatible.php#migration84.incompatible.core.exit">Changement de comportement de la fonction <code>exit()</code></a>.',
    'bc_warnings' => 'La constante <code>E_STRICT</code> est désormais obsolète.',

    'footer_title' => 'Meilleures performances, meilleure syntaxe, sécurité des types améliorée.',
    'footer_description' => '<p>Pour télécharger les sources de PHP 8.4, veuillez visiter la page des <a href="/downloads">téléchargements</a>. Les binaires pour Windows sont disponibles sur le site <a href="https://windows.php.net/download">PHP for Windows</a>. La liste des changements est enregistrée dans le <a href="/ChangeLog-8.php#PHP_8_4">ChangeLog</a>.</p> <p>Le <a href="/manual/fr/migration84.php">guide de migration</a> est disponible dans le manuel PHP. Veuillez le consulter pour une liste détaillée des nouvelles fonctionnalités et des changements non compatibles avec les versions précédentes.</p>',
];
