{"id":81838,"date":"2025-12-05T09:30:31","date_gmt":"2025-12-05T08:30:31","guid":{"rendered":"https:\/\/kinsta.com\/fr\/?p=81838&#038;preview=true&#038;preview_id=81838"},"modified":"2025-12-08T14:19:52","modified_gmt":"2025-12-08T13:19:52","slug":"php-8-5","status":"publish","type":"post","link":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/","title":{"rendered":"PHP 8.5 : Voici les nouveaut\u00e9s de la derni\u00e8re version"},"content":{"rendered":"<p>Le groupe PHP a publi\u00e9 la version 8.5 du langage de script open source qui alimente une grande partie du Web, y compris les sites utilisant le CMS WordPress.<\/p>\n<p>La sortie de PHP 8.5 en novembre a marqu\u00e9 la deuxi\u00e8me ann\u00e9e de l&rsquo;engagement de la communaut\u00e9 PHP \u00e0 fournir des mises \u00e0 jour majeures selon un calendrier annuel, suivi de <a href=\"https:\/\/www.php.net\/supported-versions.php\">deux ann\u00e9es compl\u00e8tes de support actif<\/a> pour chaque version.<\/p>\n<p>Bien que la version 8.5 soit toute nouvelle, nous l&rsquo;avons d\u00e9j\u00e0 couverte dans notre <a href=\"https:\/\/kinsta.com\/fr\/blog\/comparaison-php\/\">analyse comparative annuelle de PHP<\/a> derri\u00e8re une vari\u00e9t\u00e9 de plates-formes CMS et de frameworks populaires.<\/p>\n<p>Si vous envisagez de <a href=\"https:\/\/www.php.net\/manual\/en\/migration85.php\">migrer des applications PHP vers la version 8.5<\/a>, vous devez savoir ce qui a chang\u00e9 dans cette derni\u00e8re version. Cela inclut les nouvelles fonctionnalit\u00e9s que vous pourriez exploiter pour am\u00e9liorer votre code et les anciennes fonctionnalit\u00e9s que les d\u00e9veloppeurs de PHP s&rsquo;appr\u00eatent \u00e0 supprimer.<\/p>\n<p>Voici ce que nous pensons \u00eatre les points forts de cette nouvelle version :<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>Nouvelles fonctionnalit\u00e9s et am\u00e9liorations de PHP 8.5<\/h2>\n<p>Commen\u00e7ons par les nouveaux ajouts \u00e0 la base de code PHP. Ces changements commencent g\u00e9n\u00e9ralement par des <a href=\"https:\/\/wiki.php.net\/rfc\">demandes de commentaires (Request for Comments ou RFC)<\/a> qui peuvent \u00eatre approuv\u00e9es et assign\u00e9es \u00e0 une future version de PHP.<\/p>\n<p>Les nouvelles fonctionnalit\u00e9s d\u00e9crites ci-dessous sont celles qui retiennent le plus l&rsquo;attention autour de PHP 8.5.<\/p>\n<div><\/div><kinsta-auto-toc list-style=\"disc\" selector=\"h3\" count-number=\"5\" sub-toc=\"true\"><\/kinsta-auto-toc>\n<h3>Cha\u00eener des appels de fonction avec l&rsquo;op\u00e9rateur pipe<\/h3>\n<p>Un nouvel op\u00e9rateur pipe (<code class=\"language-php\">|&gt;<\/code>) encha\u00eene les appels de fonction d&rsquo;une mani\u00e8re qui semblera vaguement famili\u00e8re aux programmeurs JavaScript. L&rsquo;op\u00e9rateur pipe fonctionne de gauche \u00e0 droite, en passant une seule valeur le long de la cha\u00eene \u00e0 chaque \u00e9tape.<\/p>\n<p>Avec les versions pr\u00e9c\u00e9dentes de PHP, les programmeurs pouvaient accomplir une t\u00e2che similaire en imbriquant des fonctions ou en passant par une s\u00e9rie d&rsquo;appels de fonctions sur la valeur retourn\u00e9e \u00e0 chaque \u00e9tape.<\/p>\n<p>Voici un exemple simple utilisant le nouvel op\u00e9rateur pipe :<\/p>\n<pre><code class=\"language-php\">$text = ' New-in-php-8.4 ';\n\n$result = $text\n    |&gt; trim(...)\n    |&gt; (fn($str) =&gt; str_replace('4', '5', $str))\n    |&gt; (fn($str) =&gt; str_replace('-', ' ', $str))\n    |&gt; strtoupper(...);\n\nvar_dump($result);\n\/\/ string(14) \"NEW IN PHP 8.5\"<\/code><\/pre>\n<p>(Notez que nous utilisons la <a href=\"https:\/\/kinsta.com\/fr\/blog\/php-8-1\/#firstclass-callable-syntax\">syntaxe d&rsquo;appel de premi\u00e8re classe<\/a> <code class=\"language-php\">(...)<\/code> introduite en PHP 8.1 avec les appels de fonction <code class=\"language-php\">trim()<\/code> et <code class=\"language-php\">strtoupper()<\/code>)<\/p>\n<p>La cha\u00eene pip\u00e9e ci-dessus pourrait \u00eatre \u00e9crite sur une seule ligne, mais la lisibilit\u00e9 est cens\u00e9e \u00eatre l&rsquo;un des avantages de ce nouvel op\u00e9rateur.<\/p>\n<p>Ce qui pr\u00e9c\u00e8de est \u00e9quivalent \u00e0 l&rsquo;imbrication de ces op\u00e9rations (dans l&rsquo;ordre inverse) comme ceci :<\/p>\n<pre><code class=\"language-php\">$text = \" New-in-php-8.4 \";\n\n$result = strtoupper(\n    str_replace(\u2018-, ' ',\n        str_replace('4', '5', \n            trim($text)\n         )\n     )\n);<\/code><\/pre>\n<p>Alternativement, un programmeur aurait pu r\u00e9aliser cette t\u00e2che dans les versions ant\u00e9rieures de PHP comme ceci :<\/p>\n<pre><code class=\"language-php\">$text = \" New-in-php-8.4 \";\n\n$result = trim($text);\n$result = str_replace('4', '5', $result);\n$result = str_replace(\u2018-, ' ', $result);\n$result = strtoupper($result);<\/code><\/pre>\n<h3>Analyser les URL avec la nouvelle extension URI<\/h3>\n<p>Les URL (\u00e9galement connues sous le nom d&rsquo;URI pour les plus exigeants) sont essentielles \u00e0 la navigation sur le web, mais la fonction <code class=\"language-php\">parse_url()<\/code> int\u00e9gr\u00e9e \u00e0 PHP depuis la version 4 est bien connue pour ses probl\u00e8mes avec les entr\u00e9es malform\u00e9es qui peuvent conduire \u00e0 des erreurs lors de la manipulation ou de la validation d&rsquo;adresses de sites web.<\/p>\n<p>Pour am\u00e9liorer l&rsquo;analyse des URL, PHP 8.5 incorpore les biblioth\u00e8ques <a href=\"https:\/\/uriparser.github.io\/\">uriparser<\/a> et <a href=\"https:\/\/lexbor.com\/\">Lexbor<\/a>, qui supportent respectivement les standards <a href=\"https:\/\/datatracker.ietf.org\/doc\/html\/rfc3986\">RFC 3986<\/a> et <a href=\"https:\/\/url.spec.whatwg.org\/\">WHATWG<\/a>.<\/p>\n<p>Vous pouvez invoquer la biblioth\u00e8que uniparser en commen\u00e7ant le travail avec la nouvelle extension URI comme ceci :<\/p>\n<pre><code class=\"language-php\">$uri = new UriRfc3986Uri(\"https:\/\/kinsta.com\/blog\/php-8-5\/\"); \n\necho $uri-&gt;getScheme();       \/\/ https\necho $uri-&gt;getHost();         \/\/ kinsta.com\necho $uri-&gt;getPath();         \/\/ \/blog\/php-8-5<\/code><\/pre>\n<p>Vous pouvez \u00e9galement choisir la biblioth\u00e8que d&rsquo;URL du WHATWG Lexbor en proc\u00e9dant comme ceci :<\/p>\n<pre><code class=\"language-php\">$uri = new UriWagWgUrl(\"https:\/\/kinsta.com\/blog\/php-8-5\/\"); \n\necho $uri-&gt;getScheme();       \/\/ https\necho $uri-&gt;getUnicodeHost();  \/\/ kinsta.com\necho $uri-&gt;getAsciiHost();    \/\/ kinsta.com\necho $uri-&gt;getPath();         \/\/ \/blog\/php-8-5<\/code><\/pre>\n<p>Les exemples ci-dessus sont les plus basiques. Les deux biblioth\u00e8ques repr\u00e9sent\u00e9es par l&rsquo;extension URI dans PHP 8.5 partagent certaines fonctionnalit\u00e9s et pr\u00e9sentent \u00e9galement des diff\u00e9rences significatives.<\/p>\n<p>Une diff\u00e9rence importante est que la biblioth\u00e8que RFC 3986 supporte \u00e0 la fois les repr\u00e9sentations \u00ab brutes \u00bb et \u00ab normalis\u00e9es-d\u00e9cod\u00e9es \u00bb des URI. Cela peut s&rsquo;av\u00e9rer utile lorsque vous travaillez avec des entr\u00e9es et sorties cod\u00e9es en pourcentage. Utilis\u00e9s dans un navigateur, par exemple, ces deux URI sont identiques :<\/p>\n<ul>\n<li><a href=\"https:\/\/kinsta.com\/fr\/mykinsta\/\">https:\/\/kinsta.com\/mykinsta\/<\/a><\/li>\n<li><a href=\"https:\/\/kinsta.com\/fr\/mykinsta\/\">https:\/\/kinsta.com\/%6D%79%6B%69%6E%73%74%61\/<\/a><\/li>\n<\/ul>\n<p>Dans les versions pr\u00e9c\u00e9dentes de PHP, vous pouviez commencer avec <code class=\"language-php\">rawurldecode()<\/code> et <code class=\"language-php\">rawurlencode()<\/code> (qui sont \u00e9galement conformes \u00e0 la RFC 3986), mais la nouvelle extension est pr\u00eate \u00e0 travailler avec tous les composants des URI d\u00e8s le d\u00e9part, qu&rsquo;ils soient encod\u00e9s ou non.<\/p>\n<p>Voici quelques exemples tir\u00e9s directement de la <a href=\"https:\/\/wiki.php.net\/rfc\/url_parsing_api\">RFC qui sous-tend la nouvelle API d&rsquo;analyse<\/a> :<\/p>\n<pre><code class=\"language-php\">$uri = new UriRfc3986Uri(\"https:\/\/%61pple:p%61ss@ex%61mple.com\/foob%61r?%61bc=%61bc\");\n  \necho $uri-&gt;getRawUserInfo();  \/\/ %61pple:p%61ss\necho $uri-&gt;getUserInfo();     \/\/ apple:pass\n \necho $uri-&gt;getRawUsername();  \/\/ %61pple\necho $uri-&gt;getUsername();     \/\/ apple\n \necho $uri-&gt;getRawPassword();  \/\/ p%61ss\necho $uri-&gt;getPassword();     \/\/ pass\n \necho $uri-&gt;getRawHost();      \/\/ ex%61mple.com\necho $uri-&gt;getHost();         \/\/ example.com\n \necho $uri-&gt;getRawPath();      \/\/ \/foob%61r\necho $uri-&gt;getPath();         \/\/ \/foobar\n \necho $uri-&gt;getRawQuery();     \/\/ %61bc=%61bc\necho $uri-&gt;getQuery();        \/\/ abc=abc<\/code><\/pre>\n<p>Lorsque vous utilisez la biblioth\u00e8que URL de WHATWG avec la nouvelle extension, tous les URI sont trait\u00e9s comme \u00ab bruts \u00bb, il n&rsquo;y a donc pas d&rsquo;ensemble s\u00e9par\u00e9 de fonctions pour prendre en charge un formatage alternatif. Mais la biblioth\u00e8que peut convertir les caract\u00e8res ASCII et Unicode souvent vus dans les URI.<\/p>\n<h3>Soyez strict avec la nouvelle directive INI max_memory_limit<\/h3>\n<p>On dit qu&rsquo;un grand pouvoir implique de grandes responsabilit\u00e9s. Si ce pouvoir inclut le choix de la quantit\u00e9 de m\u00e9moire serveur que votre application PHP peut essayer d&rsquo;utiliser, vous pouvez \u00eatre responsable des plantages de l&rsquo;application lorsque les processus consomment plus de m\u00e9moire que ce qui est disponible.<\/p>\n<p>Une installation typique de PHP comprend un fichier <code>php.ini<\/code> avec des informations de configuration qui incluent une directive sp\u00e9cifiant une limite de consommation de m\u00e9moire pour n&rsquo;importe quel processus PHP <a href=\"https:\/\/kinsta.com\/fr\/blog\/threads-php-vs-limite-memoire\/\">(ou thread)<\/a>. Une directive INI courante pour une limite de m\u00e9moire de 128 Mo ressemble \u00e0 ceci :<\/p>\n<pre><code>\/\/ php.ini\nmemory_limit 128M<\/code><\/pre>\n<p>Sur certaines plateformes d&rsquo;h\u00e9bergement, les d\u00e9veloppeurs d&rsquo;applications PHP peuvent remplacer <code>memory_limit<\/code> \u00e0 la vol\u00e9e en utilisant la fonction <code class=\"language-php\">ini_set()<\/code> dans leur code :<\/p>\n<pre><code class=\"language-php\">ini_set(\u2018memory_limit\u2019, \u2018256M\u2019);\n \n\/\/ Start code that requires up to 256 MB of memory<\/code><\/pre>\n<p>Vous pouvez \u00e9galement donner \u00e0 la fonction la valeur <strong>-1<\/strong>, comme <code class=\"language-php\">ini_set('memory_limit', '-1')<\/code> &#8211; pour ne pas imposer de limite du tout.<\/p>\n<p>Il peut \u00eatre risqu\u00e9 pour les d\u00e9veloppeurs qui ne connaissent pas bien la configuration de la m\u00e9moire des serveurs sur lesquels leurs applications sont ex\u00e9cut\u00e9es de surcharger la directive INI pour une limite de m\u00e9moire. Si un ou plusieurs threads PHP tentent de consommer plus que le total de la m\u00e9moire disponible, le r\u00e9sultat peut \u00eatre un plantage de l&rsquo;application sans avertissement au moment de l&rsquo;ex\u00e9cution.<\/p>\n<p>PHP 8.5 ajoute une directive <code>max_memory_limit<\/code> INI qui sert de plafond, m\u00eame dans les configurations o\u00f9 les d\u00e9veloppeurs ont acc\u00e8s \u00e0 <code class=\"language-php\">init_set()<\/code> pour ajuster l&rsquo;utilisation de la m\u00e9moire dans leur code.<\/p>\n<p>Voici des exemples d&rsquo;entr\u00e9es dans le fichier <code>php.ini<\/code> d&rsquo;une installation PHP 8.5 :<\/p>\n<pre><code>\/\/ php.ini\nmax_memory_limit 256M\nmemory_limit 128M<\/code><\/pre>\n<p>Avec un <code>max_memory_limit<\/code> de 256 Mo, voici ce qui se passe dans notre code PHP :<\/p>\n<pre><code class=\"language-php\">ini_set('memory_limit', '256M');  \/\/ This is OK\nini_set('memory_limit', '512M');  \/\/ Fail with warning\nini_set('memory_limit', '-1');    \/\/ Fail with warning<\/code><\/pre>\n<p>Si vous tentez de d\u00e9finir une nouvelle limite de m\u00e9moire de 512 Mo (ou illimit\u00e9e), vous n&rsquo;y parviendrez pas. Au lieu de cela, PHP fixera la limite de m\u00e9moire \u00e0 la valeur assign\u00e9e \u00e0 <code>max_memory_limit<\/code> dans le fichier <code>php.ini<\/code> et \u00e9mettra un avertissement. (Le message d&rsquo;avertissement peut s&rsquo;afficher \u00e0 l&rsquo;\u00e9cran et \u00eatre enregistr\u00e9, en fonction des r\u00e9glages de signalement des erreurs de l&rsquo;installation PHP)<\/p>\n<p>Une approche judicieuse pour les d\u00e9veloppeurs PHP 8.5 serait d&rsquo;utiliser la fonction <code class=\"language-php\">ini_get()<\/code> pour voir si la nouvelle limite maximale a \u00e9t\u00e9 d\u00e9finie, comme <code class=\"language-php\">ini_get('max_memory_limit')<\/code> &#8211; et ensuite d&rsquo;ajuster en fonction de la valeur retourn\u00e9e. Avec les versions de PHP ant\u00e9rieures \u00e0 la 8.5, cet appel renverrait en toute s\u00e9curit\u00e9 <code>false<\/code>.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>La m\u00e9moire est g\u00e9r\u00e9e un peu diff\u00e9remment chez Kinsta. Vous pouvez jongler avec le nombre de threads et la m\u00e9moire allou\u00e9e \u00e0 chacun d&rsquo;entre eux en utilisant l&rsquo;<a href=\"https:\/\/kinsta.com\/fr\/docs\/hebergement-wordpress\/php\/performance-php-wordpress\/\">outil de Performance PHP<\/a>. Ce m\u00eame outil vous permet d&rsquo;augmenter (moyennant finances) ou de diminuer la taille de la m\u00e9moire totale partag\u00e9e par les threads.<\/p>\n<\/aside>\n\n<h3>R\u00e9cup\u00e9rer la premi\u00e8re ou la derni\u00e8re valeur d&rsquo;un tableau<\/h3>\n<p>Levez la main si vous pensiez que PHP avait d\u00e9j\u00e0 des fonctions pour lire les valeurs stock\u00e9es en tant que premier ou dernier membre d&rsquo;un tableau.<\/p>\n<p>Il s&rsquo;av\u00e8re que ce n&rsquo;est pas le cas. Mais depuis <a href=\"https:\/\/kinsta.com\/fr\/blog\/php-7-3\/#array-key-first-last\">PHP 7.3<\/a>, il a des fonctions pour d\u00e9couvrir la premi\u00e8re et la derni\u00e8re <strong>cl\u00e9 <\/strong>d&rsquo; un tableau. Ainsi, pour trouver la premi\u00e8re et la derni\u00e8re valeur, vous pouvez utiliser les fonctions <code class=\"language-php\">array_key_first()<\/code> ou <code class=\"language-php\">array_key_last()<\/code> et utiliser les cl\u00e9s retourn\u00e9es pour r\u00e9f\u00e9rencer les valeurs que vous recherchez :<\/p>\n<pre><code class=\"language-php\">$array = [\"One\", \"Two\", \"Three\"];\n\necho $array[array_key_first($array)]; \/\/ \"One\"\n<\/code><\/pre>\n<p>PHP 8.5 \u00e9limine une \u00e9tape pour cette t\u00e2che et vous permet d&rsquo;atteindre les valeurs directement avec les nouvelles fonctions <code class=\"language-php\">array_first()<\/code> et <code class=\"language-php\">array_last()<\/code>.<\/p>\n<p>C&rsquo;est tr\u00e8s simple :<\/p>\n<pre><code class=\"language-php\">$array = [\"One\", \"Two\", \"Three\"];\n\necho array_first($array);  \/\/ \"One\"\necho array_last($array);   \/\/ \"Three\"\necho array_last([]);       \/\/ null<\/code><\/pre>\n<p>Ci-dessus, vous pouvez voir qu&rsquo;un tableau vide renverra <code>null<\/code>, mais cela ne confirme pas que le tableau entier est vide, puisqu&rsquo;une valeur de tableau peut \u00eatre nulle :<\/p>\n<pre><code class=\"language-php\">echo array_last([1, 2, null]); \/\/ null<\/code><\/pre>\n<h3>Rappelez-vous d&rsquo;utiliser la valeur de retour d&rsquo;une fonction<\/h3>\n<p>PHP 5.8 ajoute un nouvel attribut <code class=\"language-php\">#[NoDiscard]<\/code> qui indique que la valeur de retour d&rsquo;une fonction peut \u00eatre critique. PHP confirmera que la valeur de retour est consomm\u00e9e d&rsquo;une mani\u00e8re ou d&rsquo;une autre et, si ce n&rsquo;est pas le cas, d\u00e9clenchera un avertissement.<\/p>\n<p>Un exemple simple :<\/p>\n<pre><code class=\"language-php\">#[NoDiscard(\"this message property will be appended to the built-in warning.\")]\nfunction foo(): string {\n    return 'bar';\n}\n\n\/\/ Warning:\n\/\/ The return value of function foo() is expected to be consumed,\n\/\/ this message property will be appended to the built-in warning.\nfoo();\n\n\/\/ This will not trigger a warning:\n$result = foo();\n\n\/\/ Also satisfactory is the (void) cast:\n(void) foo();<\/code><\/pre>\n<p>Dans l&rsquo;exemple ci-dessus, la valeur de retour de la fonction d\u00e9finie n&rsquo;est pas utilis\u00e9e du tout dans un premier temps, ce qui d\u00e9clenche un avertissement. Mais lorsqu&rsquo;elle est assign\u00e9e \u00e0 la variable <code class=\"language-php\">$result<\/code> ou cast\u00e9e en <code class=\"language-php\">void<\/code>, la valeur est consid\u00e9r\u00e9e comme consomm\u00e9e.<\/p>\n<p>Les auteurs de la <a href=\"https:\/\/wiki.php.net\/rfc\/marking_return_value_as_important\">RFC \u00e0 l&rsquo;origine de cet ajout<\/a> \u00e0 PHP 8.5 ont d\u00e9crit des utilisations plus convaincantes de cet attribut que le simple exemple ci-dessus. Un des sc\u00e9narios \u00e9tait une fonction critique avec un rapport d&rsquo;erreur plus complexe qu&rsquo;un simple pass\/fail, et mieux transmis par la valeur de retour de la fonction.<\/p>\n<h4>Autres am\u00e9liorations li\u00e9es aux attributs<\/h4>\n<p>Outre le nouvel attribut <code class=\"language-php\">#[NoDiscard]<\/code>, d&rsquo;autres am\u00e9liorations ont \u00e9t\u00e9 apport\u00e9es \u00e0 la fonctionnalit\u00e9 des m\u00e9tadonn\u00e9es d&rsquo;attributs dans la nouvelle version :<\/p>\n<ul>\n<li>Les attributs peuvent d\u00e9sormais cibler des constantes.<\/li>\n<li>L&rsquo;attribut <code class=\"language-php\">#[Override]<\/code> peut d\u00e9sormais \u00eatre appliqu\u00e9 aux propri\u00e9t\u00e9s.<\/li>\n<li>L&rsquo;attribut <code class=\"language-php\">#[Deprecated]<\/code> peut \u00eatre utilis\u00e9 sur les traits et les constantes.<\/li>\n<li>Un nouvel attribut <code class=\"language-php\">#[DelayedTargetValidation]<\/code> peut \u00eatre utilis\u00e9 pour supprimer les erreurs de compilation des attributs de base et d&rsquo;extension qui sont utilis\u00e9s sur des cibles non valides.<\/li>\n<\/ul>\n<h2>D\u00e9pr\u00e9ciations et suppressions en PHP 8.5<\/h2>\n<p>Chaque version de PHP est accompagn\u00e9e d&rsquo;une liste de fonctionnalit\u00e9s qui seront supprim\u00e9es dans les versions futures. L&rsquo;utilisation de fonctionnalit\u00e9s d\u00e9pr\u00e9ci\u00e9es dans votre code d\u00e9clenchera des avertissements. Lorsqu&rsquo;elles sont finalement supprim\u00e9es de PHP, leur utilisation peut entra\u00eener des erreurs fatales.<\/p>\n<p>Voici quelques \u00e9l\u00e9ments notables qui sont d\u00e9pr\u00e9ci\u00e9s ou supprim\u00e9s en PHP 8.5 :<\/p>\n<ul>\n<li>L&rsquo;op\u00e9rateur backtick comme alias de <code class=\"language-php\">shell_exec()<\/code> est obsol\u00e8te.<\/li>\n<li>Les noms de cast non canoniques <code class=\"language-php\">(boolean)<\/code>, <code class=\"language-php\">(integer)<\/code>, <code class=\"language-php\">(double)<\/code>, et <code class=\"language-php\">(binary)<\/code> ont \u00e9t\u00e9 d\u00e9pr\u00e9ci\u00e9s. Utilisez plut\u00f4t <code class=\"language-php\">(bool)<\/code>, <code class=\"language-php\">(int)<\/code>, <code class=\"language-php\">(float)<\/code>, et <code class=\"language-php\">(string)<\/code>.<\/li>\n<li>Le param\u00e8tre INI disable_classes a \u00e9t\u00e9 supprim\u00e9 car il entra\u00eene la rupture de plusieurs hypoth\u00e8ses du moteur.<\/li>\n<li>Terminer les instructions <code class=\"language-php\">case<\/code> par un point-virgule au lieu d&rsquo;un deux-points a \u00e9t\u00e9 supprim\u00e9.<\/li>\n<li>L&rsquo;utilisation de null comme d\u00e9calage de tableau ou lors de l&rsquo;appel \u00e0 <code class=\"language-php\">array_key_exists()<\/code> est d\u00e9sormais obsol\u00e8te. Utilisez plut\u00f4t une cha\u00eene vide.<\/li>\n<li>Il n&rsquo;est plus possible d&rsquo;utiliser \u00ab array \u00bb et \u00ab callable \u00bb comme noms d&rsquo;alias de classe dans <code class=\"language-php\">class_alias()<\/code>.<\/li>\n<li>Les m\u00e9thodes magiques <code class=\"language-php\">__sleep()<\/code> et <code class=\"language-php\">__wakeup()<\/code> ont \u00e9t\u00e9 supprim\u00e9es. A la place, les m\u00e9thodes magiques <code class=\"language-php\">__serialize()<\/code> et <code class=\"language-php\">__unserialize()<\/code> doivent \u00eatre utilis\u00e9es.<\/li>\n<li>Un avertissement est d\u00e9sormais \u00e9mis lors du casting de NAN vers d&rsquo;autres types.<\/li>\n<li>La d\u00e9structuration de valeurs non-array (autres que null) en utilisant <code class=\"language-php\">[]<\/code> ou <code class=\"language-php\">list()<\/code> \u00e9met maintenant un avertissement.<\/li>\n<li>Un avertissement est maintenant \u00e9mis lors du casting de flottants (ou de cha\u00eenes de caract\u00e8res ressemblant \u00e0 des flottants) vers <code class=\"language-php\">int<\/code> s&rsquo;ils ne peuvent pas \u00eatre repr\u00e9sent\u00e9s comme tels.<\/li>\n<\/ul>\n<h2>R\u00e9sum\u00e9<\/h2>\n<p>Voil\u00e0 un aper\u00e7u des points forts de la version 8.5 de PHP. Nous sommes convaincus que le nouvel op\u00e9rateur pipe et l&rsquo;am\u00e9lioration de l&rsquo;analyse des URI seront populaires aupr\u00e8s des d\u00e9veloppeurs. Peut-\u00eatre m\u00eame les nouvelles fonctions <code class=\"language-php\">array_first()<\/code> et <code class=\"language-php\">array_last()<\/code>, que nous aurions pari\u00e9 sur le fait qu&rsquo;elles existent d\u00e9j\u00e0.<\/p>\n<p>Mais toute nouvelle version de PHP comprend des centaines de changements. Vous pouvez trouver une <a href=\"https:\/\/github.com\/php\/php-src\/blob\/PHP-8.5\/UPGRADING\">liste compl\u00e8te des mises \u00e0 jour de PHP 8.5<\/a> dans le d\u00e9p\u00f4t officiel GitHub du PHP Group.<\/p>\n<p>Pendant ce temps, ici \u00e0 Kinsta, nous travaillons \u00e0 rendre PHP 8.5 disponible pour nos clients d&rsquo;<a href=\"https:\/\/kinsta.com\/fr\/hebergement-wordpress\/\">h\u00e9bergement WordPress<\/a>. Lorsque cela sera en ligne, vous pourrez passer \u00e0 la nouvelle version en utilisant nos outils de <a href=\"https:\/\/kinsta.com\/fr\/docs\/hebergement-wordpress\/php\/redemarrer-mise-a-jour-php\/#update-php\">r\u00e9glages PHP<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Le groupe PHP a publi\u00e9 la version 8.5 du langage de script open source qui alimente une grande partie du Web, y compris les sites utilisant &#8230;<\/p>\n","protected":false},"author":259,"featured_media":81839,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[1000],"class_list":["post-81838","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-mises-a-jour-php"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PHP 8.5\u00a0: Voici les nouveaut\u00e9s de la derni\u00e8re version<\/title>\n<meta name=\"description\" content=\"C&#039;est la p\u00e9riode de l&#039;ann\u00e9e o\u00f9 une nouvelle version de PHP est d\u00e9voil\u00e9e. Voici les principales nouveaut\u00e9s de PHP 8.5.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PHP 8.5 : Voici les nouveaut\u00e9s de la derni\u00e8re version\" \/>\n<meta property=\"og:description\" content=\"C&#039;est la p\u00e9riode de l&#039;ann\u00e9e o\u00f9 une nouvelle version de PHP est d\u00e9voil\u00e9e. Voici les principales nouveaut\u00e9s de PHP 8.5.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstafrance\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-05T08:30:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-08T13:19:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1470\" \/>\n\t<meta property=\"og:image:height\" content=\"735\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Steve Bonisteel\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"C&#039;est la p\u00e9riode de l&#039;ann\u00e9e o\u00f9 une nouvelle version de PHP est d\u00e9voil\u00e9e. Voici les principales nouveaut\u00e9s de PHP 8.5.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png\" \/>\n<meta name=\"twitter:creator\" content=\"@kinsta_fr\" \/>\n<meta name=\"twitter:site\" content=\"@kinsta_fr\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"Steve Bonisteel\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/\"},\"author\":{\"name\":\"Steve Bonisteel\",\"@id\":\"https:\/\/kinsta.com\/fr\/#\/schema\/person\/d84ceff87bd64a4368a581fc8aa8bd6f\"},\"headline\":\"PHP 8.5 : Voici les nouveaut\u00e9s de la derni\u00e8re version\",\"datePublished\":\"2025-12-05T08:30:31+00:00\",\"dateModified\":\"2025-12-08T13:19:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/\"},\"wordCount\":2075,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/fr\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png\",\"inLanguage\":\"fr-FR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/\",\"url\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/\",\"name\":\"PHP 8.5\u00a0: Voici les nouveaut\u00e9s de la derni\u00e8re version\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/fr\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png\",\"datePublished\":\"2025-12-05T08:30:31+00:00\",\"dateModified\":\"2025-12-08T13:19:52+00:00\",\"description\":\"C'est la p\u00e9riode de l'ann\u00e9e o\u00f9 une nouvelle version de PHP est d\u00e9voil\u00e9e. Voici les principales nouveaut\u00e9s de PHP 8.5.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png\",\"contentUrl\":\"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png\",\"width\":1470,\"height\":735},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/fr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mises \u00e0 jour PHP\",\"item\":\"https:\/\/kinsta.com\/fr\/sujets\/mises-a-jour-php\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"PHP 8.5 : Voici les nouveaut\u00e9s de la derni\u00e8re version\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/fr\/#website\",\"url\":\"https:\/\/kinsta.com\/fr\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Solutions d&#039;h\u00e9bergement premium, rapides et s\u00e9curis\u00e9es\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/fr\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/fr\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/fr\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/fr\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/kinsta.com\/fr\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/fr\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstafrance\/\",\"https:\/\/x.com\/kinsta_fr\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/fr\/#\/schema\/person\/d84ceff87bd64a4368a581fc8aa8bd6f\",\"name\":\"Steve Bonisteel\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/kinsta.com\/fr\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0adffb3f9c86a6ec8245f8399d540823?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0adffb3f9c86a6ec8245f8399d540823?s=96&d=mm&r=g\",\"caption\":\"Steve Bonisteel\"},\"description\":\"Steve Bonisteel is a Technical Editor at Kinsta who began his writing career as a print journalist, chasing ambulances and fire trucks. He has been covering Internet-related technology since the late 1990s.\",\"url\":\"https:\/\/kinsta.com\/fr\/blog\/author\/stevebonisteel\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"PHP 8.5\u00a0: Voici les nouveaut\u00e9s de la derni\u00e8re version","description":"C'est la p\u00e9riode de l'ann\u00e9e o\u00f9 une nouvelle version de PHP est d\u00e9voil\u00e9e. Voici les principales nouveaut\u00e9s de PHP 8.5.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/","og_locale":"fr_FR","og_type":"article","og_title":"PHP 8.5 : Voici les nouveaut\u00e9s de la derni\u00e8re version","og_description":"C'est la p\u00e9riode de l'ann\u00e9e o\u00f9 une nouvelle version de PHP est d\u00e9voil\u00e9e. Voici les principales nouveaut\u00e9s de PHP 8.5.","og_url":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstafrance\/","article_published_time":"2025-12-05T08:30:31+00:00","article_modified_time":"2025-12-08T13:19:52+00:00","og_image":[{"width":1470,"height":735,"url":"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png","type":"image\/png"}],"author":"Steve Bonisteel","twitter_card":"summary_large_image","twitter_description":"C'est la p\u00e9riode de l'ann\u00e9e o\u00f9 une nouvelle version de PHP est d\u00e9voil\u00e9e. Voici les principales nouveaut\u00e9s de PHP 8.5.","twitter_image":"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png","twitter_creator":"@kinsta_fr","twitter_site":"@kinsta_fr","twitter_misc":{"\u00c9crit par":"Steve Bonisteel","Dur\u00e9e de lecture estim\u00e9e":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/"},"author":{"name":"Steve Bonisteel","@id":"https:\/\/kinsta.com\/fr\/#\/schema\/person\/d84ceff87bd64a4368a581fc8aa8bd6f"},"headline":"PHP 8.5 : Voici les nouveaut\u00e9s de la derni\u00e8re version","datePublished":"2025-12-05T08:30:31+00:00","dateModified":"2025-12-08T13:19:52+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/"},"wordCount":2075,"publisher":{"@id":"https:\/\/kinsta.com\/fr\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png","inLanguage":"fr-FR"},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/","url":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/","name":"PHP 8.5\u00a0: Voici les nouveaut\u00e9s de la derni\u00e8re version","isPartOf":{"@id":"https:\/\/kinsta.com\/fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png","datePublished":"2025-12-05T08:30:31+00:00","dateModified":"2025-12-08T13:19:52+00:00","description":"C'est la p\u00e9riode de l'ann\u00e9e o\u00f9 une nouvelle version de PHP est d\u00e9voil\u00e9e. Voici les principales nouveaut\u00e9s de PHP 8.5.","breadcrumb":{"@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/fr\/blog\/php-8-5\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#primaryimage","url":"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png","contentUrl":"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2025\/12\/whats-new-in-php-8.5.png","width":1470,"height":735},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/fr\/blog\/php-8-5\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/fr\/"},{"@type":"ListItem","position":2,"name":"Mises \u00e0 jour PHP","item":"https:\/\/kinsta.com\/fr\/sujets\/mises-a-jour-php\/"},{"@type":"ListItem","position":3,"name":"PHP 8.5 : Voici les nouveaut\u00e9s de la derni\u00e8re version"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/fr\/#website","url":"https:\/\/kinsta.com\/fr\/","name":"Kinsta\u00ae","description":"Solutions d&#039;h\u00e9bergement premium, rapides et s\u00e9curis\u00e9es","publisher":{"@id":"https:\/\/kinsta.com\/fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/fr\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/fr\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/kinsta.com\/fr\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/fr\/wp-content\/uploads\/sites\/4\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/fr\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstafrance\/","https:\/\/x.com\/kinsta_fr","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/fr\/#\/schema\/person\/d84ceff87bd64a4368a581fc8aa8bd6f","name":"Steve Bonisteel","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/kinsta.com\/fr\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0adffb3f9c86a6ec8245f8399d540823?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0adffb3f9c86a6ec8245f8399d540823?s=96&d=mm&r=g","caption":"Steve Bonisteel"},"description":"Steve Bonisteel is a Technical Editor at Kinsta who began his writing career as a print journalist, chasing ambulances and fire trucks. He has been covering Internet-related technology since the late 1990s.","url":"https:\/\/kinsta.com\/fr\/blog\/author\/stevebonisteel\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/posts\/81838","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/users\/259"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/comments?post=81838"}],"version-history":[{"count":5,"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/posts\/81838\/revisions"}],"predecessor-version":[{"id":81871,"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/posts\/81838\/revisions\/81871"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/translations\/es"},{"href":"https:\/\/kinsta.com\/fr\/wp-json\/kinsta\/v1\/posts\/81838\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/media\/81839"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/media?parent=81838"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/tags?post=81838"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/fr\/wp-json\/wp\/v2\/topic?post=81838"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}