diff --git a/entities/entities.remove.ent b/entities/entities.remove.ent index 197696a8f2..45653ee67f 100644 --- a/entities/entities.remove.ent +++ b/entities/entities.remove.ent @@ -1,6 +1,6 @@ - + - + @@ -41,13 +41,13 @@ - - 短縮型のタグ(例 3.)はデフォルトで有効ですが、 + + 短縮型のタグ(上の例の 3 番目)はデフォルトで有効ですが、 &php.ini; 設定ファイルのディレクティブ short_open_tag で無効にすることもできますし、 オプション付きで configure した場合は、 デフォルトで無効にすることも出来ます。 - + @@ -117,7 +117,7 @@ echo "最後のごあいさつ\n"; 条件文を使った高度な脱出 + 条件式が真の場合にこれが表示されます。 それ以外の場合にこちらが表示されます。 diff --git a/reference/pdo/pdo/getattribute.xml b/reference/pdo/pdo/getattribute.xml index 4e2a658413..e8907111f3 100644 --- a/reference/pdo/pdo/getattribute.xml +++ b/reference/pdo/pdo/getattribute.xml @@ -1,6 +1,6 @@ - + @@ -41,18 +41,14 @@ PDO::ATTR_* 定数の 1 つを指定します。 データベース接続に適用される一般的な属性は以下の通りです。 - PDO::ATTR_AUTOCOMMIT PDO::ATTR_CASE - PDO::ATTR_CLIENT_VERSION - PDO::ATTR_CONNECTION_STATUS + PDO::ATTR_DEFAULT_FETCH_MODE PDO::ATTR_DRIVER_NAME PDO::ATTR_ERRMODE PDO::ATTR_ORACLE_NULLS PDO::ATTR_PERSISTENT - PDO::ATTR_PREFETCH - PDO::ATTR_SERVER_INFO - PDO::ATTR_SERVER_VERSION - PDO::ATTR_TIMEOUT + PDO::ATTR_STATEMENT_CLASS + PDO::ATTR_STRINGIFY_FETCHES diff --git a/reference/pdo/pdo/prepare.xml b/reference/pdo/pdo/prepare.xml index cb78ef9f27..6700f2394b 100644 --- a/reference/pdo/pdo/prepare.xml +++ b/reference/pdo/pdo/prepare.xml @@ -1,6 +1,6 @@ - + @@ -63,15 +63,16 @@ + PHP 8.4.0 より前のバージョンでは、 エミュレートされたプリペアドステートメントと、 名前パラメータやクエスチョンマークを書き換えるパーサーは、[シングル|ダブル]クォート - に対して標準とは異なるエスケープをサポートしています。 + に対して標準とは異なるエスケープをサポートしていました。 これによって、バックスラッシュのすぐ後にクォートで終了するクエリは そのままの形では認識されず、間違ったパラメータとして認識され、 - 実行されたときにプリペアドステートメントが失敗してしまいます。 + 実行されたときにプリペアドステートメントが失敗してしまうことがありました。 回避策は、プリペアドステートメントのエミュレートをこの手のSQLクエリでは使わないようにし、 かつ、ドライバがネイティブにサポートしているパラメータ形式を使うことで、 - パラメータの書き換えを避けることです。 + パラメータの書き換えを避けることでした。 @@ -81,6 +82,15 @@ クエリをデータベースに送信する時に ? に変換されるということです。 + + PHP 8.4.0 以降では、PDO はパラメータマーカーを探すためにドライバ固有の SQL + パーサーを使います。これによって、文字列リテラルやコメントの中に現れるマーカーが + プレースホルダと誤認されることはありません。 + デフォルトのパーサーは、シングルクオートやダブルクオートで囲まれた文字列リテラルと、 + 2 つのハイフンによるコメント、ネストされていない C 言語形式のコメントを認識します。 + ドライバによっては、追加の構文や異なる構文を認識するパーサーを提供している + 場合があります。詳細はドライバ固有のドキュメントを参照してください。 + &reftitle.parameters; diff --git a/reference/pdo/pdostatement/getattribute.xml b/reference/pdo/pdostatement/getattribute.xml index c108e019c1..7b9bf9670e 100644 --- a/reference/pdo/pdostatement/getattribute.xml +++ b/reference/pdo/pdostatement/getattribute.xml @@ -1,6 +1,6 @@ - + @@ -25,6 +25,13 @@ UPDATE ... WHERE CURRENT OF に対するカーソル名を取得する + + + Pdo\Pgsql::ATTR_RESULT_MEMORY_SIZE + (PostgreSQL 固有、PHP 8.4.0 以降で利用可能): + クエリ結果に割り当てられたメモリ使用量をバイト単位で取得する + + ドライバ固有の属性は、 他のドライバでは使っては いけない diff --git a/reference/pdo_firebird/configure.xml b/reference/pdo_firebird/configure.xml index 86452bec96..6207b32c6e 100644 --- a/reference/pdo_firebird/configure.xml +++ b/reference/pdo_firebird/configure.xml @@ -1,6 +1,6 @@ - +
&reftitle.install; @@ -13,6 +13,11 @@ $ ./configure --with-pdo-firebird ]]> + + PHP 8.4.0 以降、この拡張モジュールは Firebird C++ API を使用しているため、 + ビルドには C++ コンパイラが必要です。 + また、fbclient 3.0 以降でビルドする必要があります。 +
- +
&reftitle.install; @@ -13,6 +13,10 @@ $ ./configure --with-pdo-pgsql ]]> + + この拡張モジュールには、libpq(PostgreSQL の C クライアントライブラリ)が必要です。 + PHP 8.4.0 以降では、libpq 10.0 以降が必要です。 +
- + Pdo\Pgsql クラス @@ -46,6 +46,15 @@ + + + このパーサーはドル記号で囲まれた文字列リテラルを認識するため、 + その中にある疑問符はパラメータのプレースホルダとして扱われず、 + エスケープする必要もありません。 + PHP 8.4.0 以降、ドル記号で囲まれた文字列の中で疑問符を + ?? としてエスケープすることは非推奨です。 + + diff --git a/reference/pdo_pgsql/reference.xml b/reference/pdo_pgsql/reference.xml index f426dca50f..72fcbd34d5 100644 --- a/reference/pdo_pgsql/reference.xml +++ b/reference/pdo_pgsql/reference.xml @@ -1,6 +1,6 @@ - + @@ -122,6 +122,15 @@ + + + PHP 8.4.0 以降、DSN で指定した認証情報 + (userpassword) が、 + PDO コンストラクタに渡した + 対応する引数よりも優先されます。 + これより前のバージョンでは、PDO コンストラクタの引数のほうが優先されていました。 + + DSN 文字列における全てのセミコロンは、スペースで置き換えられます。 diff --git a/reference/simplexml/simplexmlelement.xml b/reference/simplexml/simplexmlelement.xml index 6dc4c82e07..e8e9a53864 100644 --- a/reference/simplexml/simplexmlelement.xml +++ b/reference/simplexml/simplexmlelement.xml @@ -1,6 +1,6 @@ - + SimpleXMLElement クラス SimpleXMLElement @@ -57,6 +57,17 @@ + + 8.4.0 + + 値を取得するメソッド (SimpleXMLElement::asXML や + SimpleXMLElement::getName など) と、 + SimpleXMLElement の &string; へのキャストは、 + イテレータを暗黙的に巻き戻さなくなりました。 + 必要な場合は、SimpleXMLElement::rewind を使って + イテレータを明示的に巻き戻さなければなりません。 + + 8.0.0 diff --git a/reference/simplexml/simplexmlelement/rewind.xml b/reference/simplexml/simplexmlelement/rewind.xml index 7952d10b42..af3edb38b4 100644 --- a/reference/simplexml/simplexmlelement/rewind.xml +++ b/reference/simplexml/simplexmlelement/rewind.xml @@ -1,6 +1,6 @@ - + @@ -16,6 +16,17 @@ このメソッドは、SimpleXMLElement を最初の要素に巻き戻します。 + + + + PHP 8.4.0 以降では、値を取得するメソッド + (SimpleXMLElement::asXML や + SimpleXMLElement::getName など) を呼び出したり、 + SimpleXMLElement を &string; にキャストしたりしても、 + イテレータが暗黙的に巻き戻されることはなくなりました。 + 必要な場合は、このメソッドを呼び出してイテレータを明示的に巻き戻さなければなりません。 + +