From fddb8078800069396f5a54074d5ac5cb62f0d3cb Mon Sep 17 00:00:00 2001 From: lacatoire Date: Tue, 1 Sep 2026 22:38:21 +0200 Subject: [PATCH] [Sync-En] ext/pdo: document the PHP 8.5 fetch mode changes and deprecations Translation of php/doc-en#5817 (commit e16d04c): the PDO fetch constants are deprecated in favour of the PDO::FETCH_* ones, the uri: DSN scheme is deprecated, string keys in constructorArgs act as named arguments, support for by-reference parameters is removed, and the new errors sections are added. EN-Revision updated. --- reference/pdo/pdo.xml | 15 ++++++- reference/pdo/pdo/construct.xml | 38 +++++++++++++++--- reference/pdo/pdostatement/fetchall.xml | 13 ++++++- reference/pdo/pdostatement/setattribute.xml | 35 ++++++++++++++++- reference/pdo/pdostatement/setfetchmode.xml | 43 ++++++++++++++++++--- 5 files changed, 130 insertions(+), 14 deletions(-) diff --git a/reference/pdo/pdo.xml b/reference/pdo/pdo.xml index 6d8e409e16..3d20980975 100644 --- a/reference/pdo/pdo.xml +++ b/reference/pdo/pdo.xml @@ -1,6 +1,5 @@ - - + La classe PDO PDO @@ -497,6 +496,18 @@ + + 8.5.0 + + Les constantes spécifiques aux pilotes de la classe + PDO ont été dépréciées au profit des constantes + équivalentes des sous-classes spécifiques aux pilotes + (Pdo\Dblib, + Pdo\Firebird, Pdo\Mysql, + Pdo\Odbc, Pdo\Pgsql, + Pdo\Sqlite). + + 8.4.0 diff --git a/reference/pdo/pdo/construct.xml b/reference/pdo/pdo/construct.xml index a4dca4d538..e2b4542f1f 100644 --- a/reference/pdo/pdo/construct.xml +++ b/reference/pdo/pdo/construct.xml @@ -1,6 +1,5 @@ - - + PDO::__construct @@ -59,6 +58,13 @@ la chaîne de DSN. L'URI peut spécifier un fichier local ou distant. uri:file:///path/to/dsnfile + + + Le schéma de DSN uri: est obsolète à partir de + PHP 8.5.0, en raison de problèmes de sécurité liés aux DSN provenant + d'URI distantes. + + Aliasing @@ -113,11 +119,33 @@ &reftitle.errors; - - Une exception PDOException est levée si la tentative + + Une exception PDOException est levée si la tentative de connexion à la base de données demandée échoue, indépendamment du PDO::ATTR_ERRMODE actuellement défini. - + + + + + &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.5.0 + + Le schéma de DSN uri: est désormais obsolète. + + + + + diff --git a/reference/pdo/pdostatement/fetchall.xml b/reference/pdo/pdostatement/fetchall.xml index ccedcdbf6b..049685f6ec 100644 --- a/reference/pdo/pdostatement/fetchall.xml +++ b/reference/pdo/pdostatement/fetchall.xml @@ -1,5 +1,5 @@ - + PDOStatement::fetchAll @@ -153,6 +153,17 @@ + + 8.5.0 + + L'utilisation de PDO::FETCH_INTO comme mode de + récupération lève désormais une ValueError, + de la même manière que PDO::FETCH_LAZY. + L'utilisation de PDO::FETCH_PROPS_LATE avec un mode + de récupération autre que PDO::FETCH_CLASS lève + désormais une ValueError. + + 8.0.0 diff --git a/reference/pdo/pdostatement/setattribute.xml b/reference/pdo/pdostatement/setattribute.xml index a98db44f60..eab4a883a1 100755 --- a/reference/pdo/pdostatement/setattribute.xml +++ b/reference/pdo/pdostatement/setattribute.xml @@ -1,5 +1,5 @@ - + PDOStatement::setAttribute @@ -65,6 +65,39 @@ + + &reftitle.errors; + + À partir de PHP 8.5.0, lors de l'utilisation du pilote Firebird, une + ValueError est levée si le nom de curseur défini via + PDO::ATTR_CURSOR_NAME est trop long. + + + + + &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.5.0 + + Lors de l'utilisation du pilote Firebird, une ValueError + est désormais levée si le nom de curseur défini via + PDO::ATTR_CURSOR_NAME est trop long. + + + + + + + &reftitle.seealso; diff --git a/reference/pdo/pdostatement/setfetchmode.xml b/reference/pdo/pdostatement/setfetchmode.xml index c1b5bc5297..be7f3a2f13 100755 --- a/reference/pdo/pdostatement/setfetchmode.xml +++ b/reference/pdo/pdostatement/setfetchmode.xml @@ -1,6 +1,5 @@ - - + PDOStatement::setFetchMode @@ -68,9 +67,12 @@ constructorArgs - - Arguments du constructeur. - + + Arguments du constructeur. À partir de PHP 8.5.0, les clés de type chaîne + de caractères font office d'arguments nommés. Pour passer une variable + par référence, il faut utiliser un élément de référence : + $constructorArgs = [&$valByRef]. + @@ -92,6 +94,16 @@ + + &reftitle.errors; + + À partir de PHP 8.5.0, une Error est levée si cette + méthode est appelée pendant un appel à PDOStatement::fetch, + PDOStatement::fetchObject ou + PDOStatement::fetchAll. + + + &reftitle.changelog; @@ -103,6 +115,27 @@ + + 8.5.0 + + Les constructorArgs pour + PDO::FETCH_CLASS suivent désormais la sémantique CUFA + (call_user_func_array) : les clés de type chaîne de + caractères font office d'arguments nommés, et l'encapsulation automatique + des arguments passés par valeur pour les paramètres par référence a été + supprimée. + + + + 8.5.0 + + L'appel de cette méthode pendant un appel à + PDOStatement::fetch, + PDOStatement::fetchObject ou + PDOStatement::fetchAll lève désormais une + Error. + + &return.type.true.84;