diff --git a/appendices/migration84.xml b/appendices/migration84.xml index df3c0d8b8c..541ad0f04b 100644 --- a/appendices/migration84.xml +++ b/appendices/migration84.xml @@ -1,13 +1,12 @@ + + + - Migrating from PHP 8.3.x to PHP 8.4.x + PHP 8.3.x から PHP 8.4.x への移行 - This new minor version brings with it a number of - new features and a - few incompatibilities - that should be tested for before switching PHP versions in production - environments. + この新しいマイナーバージョンには、たくさんの 新機能 と 互換性のない変更がいくつか あります。実運用環境の PHP をこのバージョンにあげる前に、これらの変更を必ずテストすべきです。 diff --git a/appendices/migration84/constants.xml b/appendices/migration84/constants.xml index a00cd7af28..c149912748 100644 --- a/appendices/migration84/constants.xml +++ b/appendices/migration84/constants.xml @@ -1,9 +1,12 @@ + + + - New Global Constants + 新しいグローバル定数 - Core + PHP コア @@ -111,11 +114,11 @@ LIBXML_RECOVER - LIBXML_NO_XXE. - This is used together with LIBXML_NOENT - when entity substitution should be performed, - while disallowing external entity loading. - This constant is available as of libxml2 2.13. + LIBXML_NO_XXE + これは、外部エンティティの読み込みを許可せず + エンティティの置換を行うために、 + LIBXML_NOENTと一緒に使用されます。 + この定数はlibxml2 2.13から利用可能です。 @@ -144,10 +147,10 @@ - SIGCKPT (DragonFlyBSD only) + SIGCKPT (DragonFlyBSDのみ) - SIGCKPTEXIT (DragonFlyBSD only) + SIGCKPTEXIT (DragonFlyBSDのみ) WEXITED @@ -168,19 +171,19 @@ P_PGID - P_PIDFD (Linux only) + P_PIDFD (Linuxのみ) - P_UID (NetBSD/FreeBSD only) + P_UID (NetBSD/FreeBSDのみ) - P_GID (NetBSD/FreeBSD only) + P_GID (NetBSD/FreeBSDのみ) - P_SID (NetBSD/FreeBSD only) + P_SID (NetBSD/FreeBSDのみ) - P_JAILID (FreeBSD only) + P_JAILID (FreeBSDのみ) @@ -206,42 +209,42 @@ Sockets - The following socket options are now defined if they are supported: + サポートされている場合、次のソケットオプションが新たに定義されます: - SO_EXCLUSIVEADDRUSE (Windows only) + SO_EXCLUSIVEADDRUSE (Windowsのみ) - SOCK_CONN_DGRAM (NetBSD only) + SOCK_CONN_DGRAM (NetBSDのみ) - SOCK_DCCP (NetBSD only) + SOCK_DCCP (NetBSDのみ) - TCP_SYNCNT (Linux only) + TCP_SYNCNT (Linuxのみ) - SO_EXCLBIND (Solaris/Illumos only) + SO_EXCLBIND (Solaris/Illumosのみ) - SO_NOSIGPIPE (macOS and FreeBSD) + SO_NOSIGPIPE(macOSおよびFreeBSD) - SO_LINGER_SEC (macOS only) + SO_LINGER_SEC (macOSのみ) - IP_PORTRANGE (FreeBSD/NetBSD/OpenBSD only) + IP_PORTRANGE (FreeBSD/NetBSD/OpenBSDのみ) - IP_PORTRANGE_DEFAULT (FreeBSD/NetBSD/OpenBSD only) + IP_PORTRANGE_DEFAULT (FreeBSD/NetBSD/OpenBSDのみ) - IP_PORTRANGE_HIGH (FreeBSD/NetBSD/OpenBSD only) + IP_PORTRANGE_HIGH (FreeBSD/NetBSD/OpenBSDのみ) - IP_PORTRANGE_LOW (FreeBSD/NetBSD/OpenBSD only) + IP_PORTRANGE_LOW (FreeBSD/NetBSD/OpenBSDのみ) SOCK_NONBLOCK @@ -307,9 +310,9 @@ XML_OPTION_PARSE_HUGE - which allows parsing large inputs with - xml_parse and - xml_parse_into_struct. + xml_parseや + xml_parse_into_struct + を使用して大きな入力を解析することを可能にします。 diff --git a/appendices/migration84/deprecated.xml b/appendices/migration84/deprecated.xml index b8d49fa72f..1d3f089b5b 100644 --- a/appendices/migration84/deprecated.xml +++ b/appendices/migration84/deprecated.xml @@ -1,21 +1,24 @@ + + + - Deprecated Features + PHP 8.4.x で推奨されなくなる機能 - PHP Core + PHP コア - Implicitly nullable parameter + 暗黙的な nullable パラメータ - A parameter's type is implicitly widened to accept null - if the default value for it is &null;. + パラメータのデフォルト値が &null; の場合、 + その型は暗黙的に null を受け入れるように拡張されます。 - The following code: + 次のコードは: - should be converted to: + このように: - or + またはこのように修正する必要があります。 - However, if such a parameter declaration is followed by a mandatory - parameter: + しかし、そのようなパラメータ宣言の後に必須パラメータが続く場合: - It must be converted to: + このように: - or + またはこのように修正する必要があります。 - as optional parameter before required ones are deprecated. + なぜなら、必須パラメータの前に任意パラメータを置くことは非推奨だからです。 - Raising zero to the power of negative number + ゼロを負の数でべき乗 - Raising a number to the power of a negative number is equivalent to taking - the reciprocal of the number raised to the positive opposite of the power. - Therefore raising 0 to the power of a negative number - corresponds to dividing by 0. - Thus, this behaviour has been deprecated. + ある数の負のべき乗は、 + その数の正のべき乗の逆数と同等です。 + 例えば、10-2 は + 1 / (102) と同等です。 + つまり、0の負のべき乗は + 0 で割ることを意味します。例えば、 + 0-2 は + 1 / (02)、または + 1 / 0 となります。以上より、この動作は非推奨とされました。 - This affects the exponentiation operator ** - and the pow function. + これはべき乗演算子 ** と + pow 関数に影響します。 - If the IEEE 754 semantics are desired one should use the new - fpow function. + IEEE 754 のセマンティクスが必要な場合は、新しい + fpow 関数を使用してください。 - Using underscore <literal>_</literal> as class name + クラス名をアンダースコア <literal>_</literal> とする - Naming a class _ is now deprecated: + クラス名を _ とすることは、現在非推奨となっています: - Classes whose names start with an underscore are not - deprecated: + クラス名がアンダースコアで始まるのは、 + 非推奨ではありません: - Using <function>trigger_error</function> with - <constant>E_USER_ERROR</constant> + <function>trigger_error</function> で + <constant>E_USER_ERROR</constant> を使用 - Calling trigger_error with - error_level being equal to - E_USER_ERROR is now deprecated. + trigger_error で + error_level として + E_USER_ERROR を指定するのは非推奨となりました。 - Such usages should be replaced by either throwing an exception, - or calling exit, whichever is more appropriate. + そのような場合、例外をスローするか、 + exit を呼び出すように修正すべきです。 - The <constant>E_STRICT</constant> constant + <constant>E_STRICT</constant> 定数 - Because the E_STRICT error level was removed, - this constant is now deprecated. + E_STRICT エラーレベルが削除されたため、 + この定数は非推奨となりました。 @@ -168,7 +174,7 @@ class _MyClass {} cURL - The CURLOPT_BINARYTRANSFER constant is now deprecated. + CURLOPT_BINARYTRANSFER 定数は非推奨となりました。 @@ -176,18 +182,18 @@ class _MyClass {} Date - The DatePeriod::__construct(string $isostr, int $options = 0) - signature has been deprecated. - Use DatePeriod::createFromISO8601String instead. + DatePeriod::__construct(string $isostr, int $options = 0) の + シグネチャは非推奨となりました。 + 代わりに DatePeriod::createFromISO8601String を使用してください。 - The SUNFUNCS_RET_TIMESTAMP, - SUNFUNCS_RET_STRING, - and SUNFUNCS_RET_DOUBLE constants are now deprecated. - This follows from the deprecation of the date_sunset and - date_sunrise functions in PHP 8.1.0. + SUNFUNCS_RET_TIMESTAMP、 + SUNFUNCS_RET_STRING、 + および SUNFUNCS_RET_DOUBLE 定数は非推奨となりました。 + これは PHP 8.1.0 で date_sunset と + date_sunrise 関数が非推奨となったことに伴うものです。 @@ -196,9 +202,9 @@ class _MyClass {} - Passing &null; or &false; to dba_key_split is now - deprecated. - It would always return &false; in those cases. + dba_key_split に &null; または &false; を渡すことは + 非推奨となりました。 + これらの場合、常に &false; を返していました。 @@ -207,12 +213,12 @@ class _MyClass {} - The DOM_PHP_ERR constant is now deprecated. + DOM_PHP_ERR 定数は非推奨となりました。 - The following properties have been formally deprecated: + 以下のプロパティは正式に非推奨となりました: DOMDocument::$actualEncoding DOMDocument::$config @@ -228,7 +234,7 @@ class _MyClass {} - Passing invalid options to hash functions is now deprecated. + ハッシュ関数に無効なオプションを渡すことは非推奨となりました。 @@ -236,19 +242,19 @@ class _MyClass {} Intl - Calling intlcal_set or + intlcal_set または IntlCalendar::set - with more than two arguments is deprecated. - Use either IntlCalendar::setDate or - IntlCalendar::setDateTime instead. + を 2 つを超える引数で呼び出すことは非推奨となりました。 + 代わりに IntlCalendar::setDate または + IntlCalendar::setDateTime を使用してください。 - Calling intlgregcal_create_instance or + intlgregcal_create_instance または IntlGregorianCalendar::__construct - with more than two arguments is deprecated. - Use either IntlGregorianCalendar::createFromDate or - IntlGregorianCalendar::createFromDateTime instead. + を 2 つを超える引数で呼び出すことは非推奨となりました。 + 代わりに IntlGregorianCalendar::createFromDate または + IntlGregorianCalendar::createFromDateTime を使用してください。 @@ -256,15 +262,15 @@ class _MyClass {} LDAP - Calling ldap_connect - with more than two arguments is deprecated. - Use ldap_connect_wallet instead. + ldap_connect を + 2 つを超える引数で呼び出すことは非推奨となりました。 + 代わりに ldap_connect_wallet を使用してください。 - Calling ldap_exop - with more than four arguments is deprecated. - Use ldap_exop_sync instead. + ldap_exop + を 4 つを超える引数で呼び出すことは非推奨となりました。 + 代わりに ldap_exop_sync を使用してください。 @@ -273,37 +279,37 @@ class _MyClass {} - The mysqli_ping function and - mysqli::ping method - are now deprecated as the reconnect feature was removed in PHP 8.2.0. + mysqli_ping 関数および + mysqli::ping メソッドは、 + PHP 8.2.0 で再接続機能が削除されたため、非推奨となりました。 - The mysqli_kill function and - mysqli::kill method - are now deprecated. - If this functionality is needed a SQL KILL command - can be used instead. + mysqli_kill 関数および + mysqli::kill メソッド + は非推奨となりました。 + この機能が必要な場合は、代わりに SQL の KILL + コマンドを使用できます。 - The mysqli_refresh function and - mysqli::refresh method - are now deprecated. - If this functionality is needed a SQL FLUSH command - can be used instead. - All MYSQLI_REFRESH_* - constants have been deprecated as well. + mysqli_refresh 関数および + mysqli::refresh メソッドは + 非推奨となりました。 + この機能が必要な場合は、代わりに SQL の FLUSH コマンド + を使用できます。 + すべての MYSQLI_REFRESH_* + 定数も非推奨となりました。 - Passing the mode parameter to - mysqli_store_result explicitly has been deprecated. - As the MYSQLI_STORE_RESULT_COPY_DATA constant was - only used in conjunction with this function it has also been deprecated. + mysqli_store_result に + mode パラメータを明示的に渡すことは非推奨となりました。 + この関数のために用意されていたMYSQLI_STORE_RESULT_COPY_DATA 定数も + 非推奨となりました。 @@ -311,10 +317,10 @@ class _MyClass {} PDO_PGSQL - Using escaped question marks (??) inside - dollar-quoted strings is deprecated. - Because PDO_PGSQL now has its own SQL parser with dollar-quoted strings - support, it is no longer necessary to escape question marks inside them. + ドル記号で囲まれた文字列の中で + エスケープされた疑問符(??)を使用することは非推奨となりました。 + PDO_PGSQL はドル記号で囲まれた文字列をサポートする独自の SQL パーサーを持つようになったため、 + それらの中で疑問符をエスケープする必要はなくなりました。 @@ -322,11 +328,11 @@ class _MyClass {} PGSQL - The 2 arguments signature of pg_fetch_result, - pg_field_prtlen, and - pg_field_is_null is now deprecated. - Use the 3 arguments signature with row set to - &null; instead. + pg_fetch_result、 + pg_field_prtlen、 + および pg_field_is_null の 2 引数のシグネチャは非推奨となりました。 + 代わりに row を &null; に設定した 3 引数のシグネチャを + 使用してください。 @@ -335,9 +341,9 @@ class _MyClass {} - lcg_value is now deprecated, - as the function is broken in multiple ways. - Use Random\Randomizer::getFloat instead. + lcg_value は非推奨となりました。 + この関数は複数の点で問題があるためです。 + 代わりに Random\Randomizer::getFloat を使用してください。 @@ -345,9 +351,9 @@ class _MyClass {} Reflection - Calling ReflectionMethod::__construct - with one arguments is deprecated. - Use ReflectionMethod::createFromMethodName instead. + ReflectionMethod::__construct を + 1 つの引数で呼び出すことは非推奨となりました。 + 代わりに ReflectionMethod::createFromMethodName を使用してください。 @@ -355,31 +361,29 @@ class _MyClass {} Session - Calling session_set_save_handler - with more than two arguments is deprecated. - Use the two arguments signature instead. + session_set_save_handler を + 2 つを超える引数で呼び出すことは非推奨となりました。 + 2 引数のシグネチャを使用してください。 - Changing the value of the - session.sid_length and + session.sid_length および session.sid_bits_per_character - INI settings is deprecated. - Update the session storage backend to accept 32 character hexadecimal - session IDs and stop changing these two INI settings instead. + の INI 設定値を変更することは非推奨となりました。 + セッションストレージバックエンドを修正し、 16 進数 32 文字による + セッション ID を受け入れるようにし、これら 2 つの INI 設定を変更するのをやめてください。 - Changing the value of the - session.use_only_cookies, - session.use_trans_sid, - session.trans_sid_tags, - session.trans_sid_hosts, and + session.use_only_cookies、 + session.use_trans_sid、 + session.trans_sid_tags、 + session.trans_sid_hosts、および session.referer_check - INI settings is deprecated. - The SID constant is also deprecated. + の INI 設定値を変更することは非推奨となりました。 + SID 定数も非推奨となりました。 @@ -388,15 +392,15 @@ class _MyClass {} - Passing an int to - SoapServer::addFunction is now deprecated. - If all PHP functions need to be provided flatten the array returned by - get_defined_functions. + SoapServer::addFunction に + int を渡すことは非推奨となりました。 + すべての PHP 関数を提供する必要がある場合は、 + get_defined_functions が返す配列をフラット化してください。 - The SOAP_FUNCTIONS_ALL constant is now deprecated. + SOAP_FUNCTIONS_ALL 定数は非推奨となりました。 @@ -404,25 +408,24 @@ class _MyClass {} SPL - The SplFixedArray::__wakeup method is now - deprecated, as it implements - SplFixedArray::__serialize and + SplFixedArray::__wakeup メソッドは + 非推奨となりました。代わりに + SplFixedArray::__serializeSplFixedArray::__unserialize - which need to be overwritten instead. + をオーバーライドしてください。 - Using the default value for the escape parameter for the - SplFileObject::setCsvControl, - SplFileObject::fputcsv, and - SplFileObject::fgetcsv is now deprecated. + SplFileObject::setCsvControl、 + SplFileObject::fputcsv、および + SplFileObject::fgetcsv で + escape パラメータのデフォルト値を利用することは非推奨となりました。 - It must be passed explicitly either positionally or via named arguments. - This does not apply to SplFileObject::fputcsv - and SplFileObject::fgetcsv if - SplFileObject::setCsvControl was used to set a - new default value. + 引数または名前付き引数で明示的に指定する必要があります。 + これは、SplFileObject::setCsvControl で + 新しいデフォルト値を設定した場合、SplFileObject::fputcsv および + SplFileObject::fgetcsv には適用されません。 @@ -430,25 +433,25 @@ class _MyClass {} Standard - Calling stream_context_set_option - with two arguments is deprecated. - Use stream_context_set_options instead. + stream_context_set_option を + 2 つの引数で呼び出すことは非推奨となりました。 + 代わりに stream_context_set_options を使用してください。 - Unserializing strings using the uppercase S tag - with unserialize is deprecated. + unserialize で大文字の S タグを使用して文字列を + アンシリアライズすることは非推奨となりました。 - Using the default value for the escape parameter for the - fputcsv, - fgetcsv, and - str_getcsv is now deprecated. + fputcsv、 + fgetcsv、および + str_getcsv の + escape パラメータのデフォルト値を利用することは非推奨となりました。 - It must be passed explicitly either positionally or via named arguments. + 引数または名前付き引数で明示的に指定する必要があります。 @@ -457,14 +460,14 @@ class _MyClass {} - The xml_set_object function has been deprecated. + xml_set_object 関数は非推奨となりました。 - Passing non-callable strings to the + callable でない文字列を xml_set_* - functions is now deprecated. + 関数に渡すことは非推奨となりました。 diff --git a/appendices/migration84/incompatible.xml b/appendices/migration84/incompatible.xml index 6e500f2484..94cf4a8b9b 100644 --- a/appendices/migration84/incompatible.xml +++ b/appendices/migration84/incompatible.xml @@ -1,99 +1,99 @@ + + + - Backward Incompatible Changes + 下位互換性のない変更点 - Although not explicitly stated in this section, - every new function, - class, interface, enum, - or constant - may cause a redeclaration Error to be thrown. + このセクションで明示的に述べられていなくても、 + 新しい関数、 + クラス、インターフェイス、列挙型、 + または定数は、 + 再宣言によるErrorがスローされる可能性があります。 - PHP Core + PHP コア - <function>exit</function> behavioral change + <function>exit</function> の動作の変更 - The exit (and die) language - constructs now behave more like a function. - This means that they can now be passed like callables, + exit (およびdie) + 言語構造は、関数のように振る舞います。 + これにより、callableとして渡すことができ、 - are affected by the strict_types declare statement, - and now perform the usual type coercions instead of casting any non-integer - value to a string. + strict_types 宣言の影響を受け、 + 任意の非整数値を文字列にキャストする代わりに、通常の型強制を行います。 - As such, passing invalid types to exit and - die now consistently result in a - TypeError being thrown. + そのため、exit および die に + 無効な型を渡すと、一貫してTypeError が + スローされるようになりました。 - Recursion during comparison + 比較中の再帰 - Encountering recursion during comparison now results in an - Error exception instead of a - E_ERROR fatal error. + 比較中に再帰が発生すると、 + E_ERROR の致命的なエラーの代わりに、 + Error 例外がスローされるようになりました。 - Indirect Modification of readonly Properties + readonly プロパティの間接的な変更 - Indirect modification of readonly properties within __clone() - is no longer allowed, e.g. $ref = &$this->readonly. - This was already forbidden for readonly initialization, and was an - oversight in the "readonly reinitialization during cloning" implementation. + __clone() 内で readonly プロパティを間接的に変更することは、 + もはや許可されなくなりました。例えば、$ref = &$this->readonly のようなコードです。 + これは readonly の初期化時にはすでに禁止されており、 + 「クローン時の readonly の再初期化」の実装における見落としでした。 - Type Change of Constants + 定数の型の変更 - The PHP_DEBUG and PHP_ZTS - constants are now of type bool. - Previously they were of type int. + PHP_DEBUG および PHP_ZTS 定数の型が、 + int から bool に変更されました。 - Temporary Filename Length + 一時ファイル名の長さ - The name of uploaded files and files created by the - tempnam function are now 13 bytes longer. - The total length is still platform-dependent. + アップロードされたファイルや tempnam 関数で作成されるファイルの名前は、 + 以前より13バイト長くなりました。 + 総合的な長さは引き続きプラットフォーム依存です。 - Removal of <constant>E_STRICT</constant> error level + <constant>E_STRICT</constant> エラーレベルの削除 - The E_STRICT error level has been removed, - as it was no longer in use within the PHP engine. - The E_STRICT constant has been deprecated. + E_STRICT エラーレベルは、 + PHPエンジン内で使用されなくなったため削除されました。 + E_STRICT 定数は非推奨となりました。 - Extension Class Constants which are now Typed + 型が追加された拡張クラスの定数 - The following extension class constants now declare a type on their - constants: + 以下の拡張クラスは、定数に型が宣言されました: Date Intl @@ -108,21 +108,21 @@ - Resource to Object Migration + リソースからオブジェクトへの移行 - Several &resource;s have been migrated to &object;s. - Return value checks using is_resource should be - replaced with checks for &false;, unless specified otherwise. + いくつかの &resource; が &object; に移行されました。 + is_resource を使用した戻り値のチェックは、 + 特に指定がない限り、&false; かどうかを確認するように置き換える必要があります。 DBA - The DBA functions now accept and return - Dba\Connection objects instead of - dba_connection &resource;s. + DBA 関数は、 + dba_connection &resource; の代わりに + Dba\Connection オブジェクトを受け取り、返すようになりました。 @@ -130,15 +130,15 @@ ODBC - The ODBC functions now accept and return - Odbc\Result objects instead of - odbc_result &resource;s. + ODBC 関数は、 + odbc_result &resource; の代わりに + Odbc\Result オブジェクトを受け取り、返すようになりました。 - The ODBC functions now accept and return - Odbc\Connection objects instead of - odbc_connection &resource;s. + ODBC 関数は、 + odbc_connection &resource; の代わりに + Odbc\Connection オブジェクトを受け取り、返すようになりました。 @@ -146,45 +146,45 @@ SOAP - The SoapClient::$httpurl property is now a - Soap\Url object rather than a - soap_url &resource;. - Checks using is_resource (i.e. - is_resource($client->httpurl)) should be replaced with checks - for &null; (i.e. $client->httpurl !== null). + SoapClient::$httpurl プロパティは、 + soap_url &resource; の代わりに + Soap\Url オブジェクトになりました。 + is_resource を使用したチェック + (例: is_resource($client->httpurl))は、 + &null; かどうかのチェック(例: $client->httpurl !== null)に置き換える必要があります。 - The SoapClient::$sdl property is now a - Soap\Sdl object rather than a - soap_sdl &resource;. - Checks using is_resource (i.e. - is_resource($client->sdl)) should be replaced with checks - for &null; (i.e. $client->sdl !== null). + SoapClient::$sdl プロパティは、 + soap_sdl &resource; の代わりに + Soap\Sdl オブジェクトになりました。 + is_resource を使用したチェック + (例: is_resource($client->sdl))は、 + &null; かどうかのチェック(例: $client->sdl !== null)に置き換える必要があります。 - New warnings and exceptions + 新しい警告と例外 - New warnings and exceptions have been added which are triggered on - programming errors, i.e. invalid values provided as arguments. + プログラミングエラー、つまり無効な値が引数として提供された場合にトリガーされる + 新しい警告と例外が追加されました。 - Curl + cURL - curl_multi_select now throws a - ValueError if the - timeout parameter is less than - 0 or greater than PHP_INT_MAX. + curl_multi_select は、 + timeout パラメータが 0 未満または + PHP_INT_MAX を超える場合、 + ValueError をスローするようになりました。 - Gd + GD @@ -193,35 +193,35 @@ imagepng imageavif - now throw a ValueError when an invalid - quality is passed. + は、無効な quality が渡された場合、 + ValueError をスローするようになりました。 - imageavif will now throw a - ValueError if an invalid - speed parameter value is passed. + imageavif は、 + 無効な speed パラメータ値が渡された場合、 + ValueError をスローするようになりました。 - imagescale will now throw a - ValueError if the - width or height - parameters underflows/overflows. + imagescale は、 + width または height パラメータが + アンダーフロー/オーバーフローした場合、 + ValueError をスローするようになりました。 - imagescale will now throw a - ValueError if an invalid - mode parameter value is passed. + imagescale は、 + 無効な mode パラメータ値が渡された場合、 + ValueError をスローするようになりました。 - imagefilter will now throw a - ValueError with the - IMG_FILTER_SCATTER filter - if the sub or plus - parameters underflows/overflows. + imagefilter は、 + IMG_FILTER_SCATTER フィルタで、 + sub または plus パラメータが + アンダーフロー/オーバーフローした場合、 + ValueError をスローするようになりました。 @@ -234,8 +234,8 @@ textdomain d*gettext - now throw a ValueError if - domain is the empty string. + は、domain が空文字列の場合、 + ValueError をスローするようになりました。 @@ -243,33 +243,34 @@ Intl - resourcebundle_get, - ResourceBundle::get, and accessing offsets on - a ResourceBundle object now throw: + resourcebundle_get、 + ResourceBundle::get、および + ResourceBundle オブジェクトでのオフセットアクセスは、 + 以下の場合に例外をスローするようになりました: - TypeError for invalid offset types + 無効なオフセット型の場合、TypeError - ValueError for an empty &string; + 空の &string; の場合、ValueError - ValueError if the integer index does - not fit in a signed 32 bit integer + 整数インデックスが符号付き32ビット整数に収まらない場合、 + ValueError - IntlDateFormatter::__construct throws a - ValueError if the - locale is invalid. + IntlDateFormatter::__construct は、 + locale が無効な場合、 + ValueError をスローするようになりました。 - NumberFormatter::__construct throws a - ValueError if the - locale is invalid. + NumberFormatter::__construct は、 + locale が無効な場合、 + ValueError をスローするようになりました。 @@ -277,22 +278,22 @@ MBString - mb_encode_numericentity and - mb_decode_numericentity now check that the - map is only composed of &integer;s, - if not a ValueError is now thrown. + mb_encode_numericentity および + mb_decode_numericentity は、 + map が &integer; のみで構成されているかをチェックし、 + そうでない場合 ValueError をスローするようになりました。 - mb_http_input now always throw a - ValueError if type - is invalid. + mb_http_input は、 + type が無効な場合、常に + ValueError をスローするようになりました。 - mb_http_output now check that the - encoding does not contain any null bytes, - if it does a ValueError is now thrown. + mb_http_output は、 + encoding にヌルバイトが含まれていないかをチェックし、 + 含まれている場合 ValueError をスローするようになりました。 @@ -300,9 +301,9 @@ ODBC - odbc_fetch_row returns &false; when - row is less than or equal to 0. - A warning is now emitted in this case. + odbc_fetch_row は、 + row0 以下の場合、 + &false; を返すようになりました。この場合、警告が発せられます。 @@ -310,50 +311,49 @@ PCNTL - The pcntl_sigprocmask, - pcntl_sigwaitinfo, and - pcntl_sigtimedwait functions now throw: + pcntl_sigprocmask、 + pcntl_sigwaitinfo、および + pcntl_sigtimedwait 関数は、次の場合エラーをスローするようになりました: - A ValueError if the - signals array is empty - (except for pcntl_sigprocmask if the - mode SIG_SETMASK) + signals 配列が空の場合、 + ValueError + (pcntl_sigprocmask で + modeSIG_SETMASK のときを除く) - A TypeError if a value of the - signals array is not an &integer; + signals 配列の値が &integer; でない場合、 + TypeError - A ValueError if a value of the - signals array is not a valid signal number + signals 配列の値が有効なシグナル番号でない場合、 + ValueError - The pcntl_sigprocmask function now throws a - ValueError if the - mode is not one of SIG_BLOCK, - SIG_UNBLOCK, or SIG_SETMASK. + pcntl_sigprocmask 関数は、 + modeSIG_BLOCK、 + SIG_UNBLOCKSIG_SETMASK のいずれでもない場合、 + ValueError をスローするようになりました。 - The pcntl_sigtimedwait function now throw: + pcntl_sigtimedwait 関数は、次の場合エラーをスローするようになりました: - A ValueError if - seconds is less than 0 + seconds0 未満の場合、 + ValueError - A ValueError if - nanoseconds is less than 0 - or greater than 1e9 + nanoseconds0 未満 + または 1e9 を超える場合、 + ValueError - A ValueError if both - seconds and nanoseconds - are 0 + seconds および nanoseconds が両方とも + 0 の場合、ValueError @@ -363,9 +363,9 @@ SimpleXML - Calling simplexml_import_dom with a non-XML object - now throws a TypeError instead of a - ValueError. + simplexml_import_dom に非XMLオブジェクトを渡すと、 + ValueError の代わりに + TypeError をスローするようになりました。 @@ -373,35 +373,33 @@ Standard - The round function now validates the value of the - mode and throw a - ValueError for invalid modes. - Previously, invalid modes would have been interpreted as - PHP_ROUND_HALF_UP. + round 関数は、 mode の値を検証し、 + 無効なモードの場合、ValueError をスローするようになりました。 + 以前は、無効なモードは PHP_ROUND_HALF_UP と解釈されていました。 - The str_getcsv now throws - ValueErrors when the - separator and enclosure - arguments are not one byte long, or if the escape - argument is not one byte long nor the empty string. - This aligns the behaviour to be identical to the one of - fputcsv and fgetcsv. + str_getcsv は、 + separator および enclosure 引数が + 1バイトの長さでない場合、または escape 引数が + 1バイトの長さでないか空文字列でない場合、 + ValueError をスローするようになりました。 + これは、fputcsv および fgetcsv の動作と + 同じになるように合わせたものです。 - The php_uname function now throws a - ValueError if the - mode is invalid. + php_uname 関数は、 + mode が無効な場合、 + ValueError をスローするようになりました。 - The "allowed_classes" option for - unserialize now throws - TypeErrors and - ValueErrors if it is not an - array of class names. + unserialize の + "allowed_classes" オプションは、 + クラス名の array でない場合、 + TypeError および + ValueError をスローするようになりました。 @@ -409,15 +407,15 @@ XMLReader - Passing an invalid character encoding to - XMLReader::open or - XMLReader::XML now throws a - ValueError. + 無効な文字エンコーディングを + XMLReader::open または + XMLReader::XML に渡すと、 + ValueError をスローするようになりました。 - Passing a &string; containing null bytes previously emitted a - warning and now throws a ValueError. + ヌルバイトを含む &string; を渡すと、以前は警告が発せられていましたが、 + 現在は ValueError をスローするようになりました。 @@ -425,8 +423,8 @@ XMLWriter - Passing a &string; containing null bytes previously emitted a - warning and now throws a ValueError. + ヌルバイトを含む &string; を渡すと、以前は警告が発せられていましたが、 + 現在は ValueError をスローするようになりました。 @@ -434,22 +432,21 @@ XSL - XSLTProcessor::setParameter will now throw a - ValueError when its arguments contain null - bytes. This never actually worked correctly in the first place, - which is why it throws an exception now. + XSLTProcessor::setParameter は、 + 引数にヌルバイトが含まれる場合、ValueError をスローするようになりました。 + これは、そもそも正しく動作していませんでした。 - Calling XSLTProcessor::importStyleSheet with a - non-XML object now throws a TypeError - instead of a ValueError. + XSLTProcessor::importStyleSheet に + 非XMLオブジェクトを渡すと、ValueError の代わりに + TypeError がスローされるようになりました。 - Failure to call a PHP function callback during evaluation now throws - instead of emitting a warning. + 評価中にPHP関数コールバックの呼び出しに失敗した場合、 + 警告の発生ではなく、例外がスローされるようになりました。 @@ -458,29 +455,28 @@ DOM - Some DOM methods previously returned &false; or a - DOMException with code - DOM_PHP_ERR if a new node could not be allocated. - They now consistently throw a DOMException - with code DOM_INVALID_STATE_ERR. - This situation is extremely unlikely and the probability of being affected - is low. - As a result DOMImplementation::createDocument - now has a tentative return type of DOMDocument + 一部のDOMメソッドは、新しいノードを割り当てられない場合、以前は + &false; を返すか、DOM_PHP_ERR コードの + DOMException をスローしていました。 + これらは現在、一貫して DOM_INVALID_STATE_ERR コードの + DOMException をスローするようになりました。 + この状況は極めてまれであり、影響を受ける可能性は低いです。 + その結果、DOMImplementation::createDocument は、 - instead of DOMDocument|false. + 戻り値の型が、以前の DOMDocument|false から + DOMDocument になりました。 - Previously, DOMXPath objects could be cloned, - but resulted in an unusable object. - This is no longer possible, and cloning a DOMXPath - object now throws an Error. + 以前は、DOMXPath オブジェクトをクローンできましたが、 + 返されるオブジェクトは使用できませんでした。 + これはもはや可能ではなく、DOMXPath オブジェクトをクローンすると、 + Error がスローされるようになりました。 - The DOMImplementation::getFeature method has been removed. + DOMImplementation::getFeature メソッドは削除されました。 @@ -489,8 +485,7 @@ - The GMP class is now final and cannot be extended - anymore. + GMP クラスは final になり、継承できなくなりました。 @@ -498,19 +493,19 @@ MBString - On invalid strings (those with encoding errors), - mb_substr now interprets character indices in the same - manner as most other mbstring functions. - This means that character indices returned by mb_strpos - can be passed to mb_substr. + 無効な文字列(エンコーディングエラーを含む)に対して、 + mb_substr は他の多くの mbstring 関数と同様に、 + 文字インデックスを解釈するようになりました。 + これにより、mb_strpos が返す文字インデックスを + mb_substr に渡すことができます。 - For SJIS-Mac (MacJapanese) strings, character indices passed to - mb_substr now refer to the indices of the Unicode - codepoints which are produced when the string is converted to Unicode. - This is significant because around 40 SJIS-Mac characters convert to a - sequence of multiple Unicode codepoints. + SJIS-Mac(MacJapanese) 文字列の場合、mb_substr + に渡される文字インデックスは、文字列が Unicode に変換されたときに生成される + Unicode コードポイントのインデックスを参照します。 + これは、 SJIS-Mac の約40文字が複数の Unicode コードポイントの + シーケンスに変換されることによる重要な処理です。 @@ -518,26 +513,25 @@ MySQLi - The unused and undocumented constant - MYSQLI_SET_CHARSET_DIR has been removed. + 未使用でドキュメント化されていない定数 + MYSQLI_SET_CHARSET_DIR は削除されました。 - The MYSQLI_STMT_ATTR_PREFETCH_ROWS constant has been - removed. The feature is unavailable with mysqlnd. + MYSQLI_STMT_ATTR_PREFETCH_ROWS 定数は削除されました。 + この機能は mysqlnd では利用できません。 - The MYSQLI_CURSOR_TYPE_FOR_UPDATE and - MYSQLI_CURSOR_TYPE_SCROLLABLE constants have been - removed. This functionality was never implemented, - neither with mysqlnd nor with libmysql. + MYSQLI_CURSOR_TYPE_FOR_UPDATE および + MYSQLI_CURSOR_TYPE_SCROLLABLE 定数は + 削除されました。この機能は mysqlnd および libmysql のどちらでも + 実装されていませんでした。 - The unused MYSQLI_TYPE_INTERVAL constant, which is - currently a stub and an alias for MYSQLI_TYPE_ENUM, - has been removed. + 未使用の MYSQLI_TYPE_INTERVAL 定数は、 + 現在は MYSQLI_TYPE_ENUM のエイリアスであり、削除されました。 @@ -548,9 +542,9 @@ MySQLnd - The error code reported for MySQL server wait timeouts has been changed from - 2006 to 4031 for MySQL server - versions 8.0.24 and above. + MySQL サーバーの待機タイムアウトに対して報告されるエラーコードは、 + MySQL サーバーバージョン 8.0.24 以降で + 2006 から 4031 に変更されました。 @@ -558,41 +552,42 @@ Opcache - The maximum value of the + 64ビットアーキテクチャ上での opcache.interned_strings_buffer - setting on 64bit architectures is now 32767. - Previously it was 4095. + 設定の最大値は 32767 になりました。 + 以前は 4095 でした。 JIT - The default configuration values for the JIT changed from + JIT のデフォルトの設定値は、 opcache.jit=tracing - and opcache.jit_buffer_size=0 - to opcache.jit=disable - and opcache.jit_buffer_size=64M, respectively. + および opcache.jit_buffer_size=0 + から、 opcache.jit=disable および + opcache.jit_buffer_size=64M にそれぞれ変更されました。 - This does not affect the default observable behavior, - as the JIT is still disabled by default. - However, it is now disabled through the - opcache.jit setting, - rather than - opcache.jit_buffer_size. - This may affect users who previously enabled JIT through + これはデフォルトの動作には影響しません。 + JIT は引き続きデフォルトで無効になっています。 + ただし、 + opcache.jit_buffer_size ではなく、 + opcache.jit を通じて無効化されています。 + これは、以前に opcache.jit_buffer_size - exclusively, without also specifying a JIT mode using - opcache.jit. - To enable JIT compilation, set the - opcache.jit config value accordingly. + のみを使用して JIT を有効にし、 + opcache.jit + を使用してJIT モードを指定していなかったユーザーに影響を与える可能性があります。 + JIT コンパイルを有効にするには、 + opcache.jit の設定値を適切に設定してください。 - If JIT compilation is enabled, PHP will now exit with a fatal error on - startup if the initialization of the JIT compiler failed for any reason. + JIT コンパイルが有効になっている場合、 + JIT コンパイラの初期化に何らかの理由で失敗すると、 + PHP は起動時に致命的なエラーで終了するようになりました。 @@ -601,11 +596,11 @@ PCNTL - The pcntl_sigprocmask, - pcntl_sigwaitinfo, and - pcntl_sigtimedwait functions now always - return &false; on failure. - In some case previously it could return the value -1. + pcntl_sigprocmask、 + pcntl_sigwaitinfo、 + および pcntl_sigtimedwait 関数は、 + 失敗時に常に &false; を返すようになりました。 + 以前は場合によっては -1 を返すことがありました。 @@ -613,12 +608,12 @@ PCRE - The bundled pcre2lib has been updated to version 10.44. - As a consequence, this means {,3} is now recognized - as a quantifier instead of as text. - Furthermore, the meaning of some character classes in UCP mode has changed. - Consult the PCRE2 Changelog - for a full changelog. + バンドルされた pcre2lib はバージョン 10.44 に更新されました。 + その結果、{,3} はテキストとしてではなく + 量指定子として認識されるようになりました。 + さらに、UCP モードでの一部の文字クラスの意味が変更されました。 + 完全な変更ログは PCRE2 Changelog を + 参照してください。 @@ -626,12 +621,12 @@ PDO_DBLIB - The Pdo\Dblib::ATTR_STRINGIFY_UNIQUEIDENTIFIER and - Pdo\Dblib::ATTR_DATETIME_CONVERT attributes now act as - boolean attributes instead of integer attributes. - Thus setting the attribute via PDO::setAttribute - and retrieving it via PDO::getAttribute expects - and or return a bool. + Pdo\Dblib::ATTR_STRINGIFY_UNIQUEIDENTIFIER および + Pdo\Dblib::ATTR_DATETIME_CONVERT 属性は、 + 整数属性の代わりにブール属性として動作するようになりました。 + したがって、PDO::setAttribute を介して属性を設定し、 + PDO::getAttribute を介して取得する場合、 + bool を期待または返却します。 @@ -639,17 +634,17 @@ PDO_FIREBIRD - The PDO::ATTR_AUTOCOMMIT attribute now act as - boolean attributes instead of integer attributes. - Thus setting the attribute via PDO::setAttribute - and retrieving it via PDO::getAttribute expects - and or return a bool. + PDO::ATTR_AUTOCOMMIT 属性は、 + 整数属性の代わりにブール属性として動作するようになりました。 + したがって、PDO::setAttribute を介して属性を設定し、 + PDO::getAttribute を介して取得する場合、 + bool を期待または返却します。 - The extension now exposes some Firebird C++ APIs, - therefore building this extension now requires a C++ compiler. - Moreover, the extension must now be compiled against fbclient 3.0 or higher. + この拡張モジュールはいくつかの Firebird C++ API を公開するようになったため、 + この拡張モジュールをビルドするには C++ コンパイラが必要になりました。 + さらに、この拡張モジュールは fbclient 3.0 以上にでコンパイルする必要があります。 @@ -657,13 +652,13 @@ PDO_MYSQL - The PDO::ATTR_AUTOCOMMIT, - PDO::ATTR_EMULATE_PREPARES, and - PDO::MYSQL_ATTR_DIRECT_QUERY attributes now act as - boolean attributes instead of integer attributes. - Thus setting the attribute via PDO::setAttribute - and retrieving it via PDO::getAttribute expects - and or return a bool. + PDO::ATTR_AUTOCOMMIT、 + PDO::ATTR_EMULATE_PREPARES、 + PDO::MYSQL_ATTR_DIRECT_QUERY 属性は、 + 整数属性の代わりにブール属性として動作するようになりました。 + したがって、PDO::setAttribute を介して属性を設定し、 + PDO::getAttribute を介して取得する場合、 + bool を期待または返却します。 @@ -671,8 +666,8 @@ PDO_PGSQL - The DSN's credentials, when set, are given priority over their PDO - constructor counterparts, being closer to the documentation states. + DSN に認証情報が設定されている場合、PDO コンストラクタの引数よりも優先されるようになり、 + ドキュメントの記述に近くなりました。 @@ -680,16 +675,17 @@ SimpleXML - SimpleXMLElement is not only a representation of an - XML element, but it is also a RecursiveIterator. - Prior to PHP 8.4.0, some of its methods (e.g. - SimpleXMLElement::asXML or - SimpleXMLElement::getName) and casting such - instances to &string; would implicitly reset the iterator. + SimpleXMLElement は XML 要素の + 表現であるだけでなく、RecursiveIterator でもあります。 + PHP 8.4.0 より前では、一部のメソッド(例: + SimpleXMLElement::asXML や + SimpleXMLElement::getName)および + それらのインスタンスの &string; へのキャストすると、 + 暗黙的にイテレータをリセットしていました。 - This could cause unexpected infinite loops as the iterator was rewound. - For example: + これはイテレータが巻き戻されるため、予期しない無限ループを引き起こす可能性がありました。 + 例えば: - would result in an infinite loop. + これは無限ループを引き起こしていました。 - However, this behavior has now been corrected, and a - SimpleXMLElement will no longer implicitly reset - the iterator data, unless explicitly rewound. - Meaning the previous example would now result in: + しかし、この動作は修正され、 + SimpleXMLElement は明示的に巻き戻されない限り、 + イテレータをリセットしなくなりました。 + つまり、前述の例は現在では次のようになります: SOAP - SoapClient::$typemap is now an array - rather than a resource. - Checks using is_resource (i.e. - is_resource($client->typemap)) should be - replaced with checks for &null; (i.e. $client->typemap !== null). + SoapClient::$typemap は、resource ではなく + array になりました。 + is_resource を使用したチェック + (例: is_resource($client->typemap))は、 + &null; かどうかのチェック(例: $client->typemap !== null)に置き換える必要があります。 - The SOAP extension gained an optional dependency on the - session extension. - If PHP is built without the session extension and with the - configure flag enabled, - startup errors will now occur if the SOAP - extension is also used. - To solve this either don't use rtld-now or load the session extension. + SOAP 拡張モジュールには、session 拡張モジュールへの + オプションの依存関係が追加されました。 + PHP が session 拡張モジュールなしでビルドされ、かつ + 構成フラグが有効になっている場合、 + SOAP 拡張モジュールも使用していると、 + 起動時にエラーが発生します。 + これを解決するには、rtld-now を使用しないか、session 拡張モジュールを読み込んでください。 @@ -766,23 +762,23 @@ nodeData: 3 Standard - When using strcspn with - characters being the empty string, - the length of the string is now returned instead of incorrectly stopping - at the first null byte. + strcspn で + characters に空文字列を指定すると + 文字列の長さが返されるようになりました。 + 以前は、最初のヌルバイトで誤って停止していました。 - http_build_query now correctly handles backed enums. + http_build_query は、Backed Enumを正しく処理するようになりました。 - stream_bucket_make_writeable and - stream_bucket_new will now return a - StreamBucket instance instead of an instance of - stdClass. + stream_bucket_make_writeable および + stream_bucket_new は、 + stdClass のインスタンスではなく、 + StreamBucket のインスタンスを返すようになりました。 @@ -790,8 +786,8 @@ nodeData: 3 Tidy - Failures in the constructor now throw exceptions rather than emitting - warnings and having a broken object. + コンストラクタでの失敗時に、警告を発して壊れたオブジェクトになるのではなく、 + 例外をスローするようになりました。 @@ -799,24 +795,24 @@ nodeData: 3 XML - The xml_set_*_handler - functions now declare and check for an effective - signature of callablestringnull for the - handler parameters. - Moreover, values of type string that correspond to method names, - of object set with xml_set_object are now checked to - see if the method exists on the class of the previously passed object. - This means that xml_set_object must now always be - called prior to setting method names as callables. - Passing an empty string to disable the handler is still allowed, - but deprecated. + xml_set_*_handler + 関数は、handler パラメータに対して + callablestringnull の + 有効なシグネチャを宣言し、チェックするようになりました。 + さらに、xml_set_object で設定されたオブジェクトのメソッド名に対応する + string 型の値は、事前に渡されたオブジェクトのクラス上にメソッドが存在するかどうかが + チェックされるようになりました。 + 従って、xml_set_object は、 + callable メソッドを設定する前に呼び出す必要があります。 + ハンドラを無効にするために空文字列を渡すことは引き続き許可されていますが、 + 非推奨となりました。 - However, as xml_set_object and passing - non-callable strings is deprecated. - It is recommended to change such instances with a callable - referring to the method directly. + しかし、xml_set_object と + callable でない文字列を渡すことは非推奨です。 + そのようなインスタンスをメソッドを直接参照する callable に + 変更することをお勧めします。 diff --git a/appendices/migration84/new-classes.xml b/appendices/migration84/new-classes.xml index bf943a2cd5..8e57a9d2c3 100644 --- a/appendices/migration84/new-classes.xml +++ b/appendices/migration84/new-classes.xml @@ -1,6 +1,9 @@ + + + - New Classes, Enums, and Interfaces + 新しいクラス、列挙型、インターフェイス Core @@ -70,7 +73,7 @@ PCNTL - Pcntl\QosClass (macOS only) + Pcntl\QosClass (macOSのみ) diff --git a/appendices/migration84/new-features.xml b/appendices/migration84/new-features.xml index 1c85cc6758..2d581408bd 100644 --- a/appendices/migration84/new-features.xml +++ b/appendices/migration84/new-features.xml @@ -1,20 +1,24 @@ + + + - New Features + 新機能 - PHP Core + PHP コア - Property Hooks + プロパティフック - Object properties may now have additional logic associated with their - get and set operations. - Depending on the usage, that may or may not make the property virtual, - that is, it has no backing value at all. + オブジェクトのプロパティは、 + get および set 操作に + 追加のロジックを関連付けることができるようになりました。 + 使用方法に応じてそのプロパティは、値を持つ場合もありますし、 + 仮想的、つまり値を持たない場合もあります。 @@ -23,19 +27,19 @@ $this->firstName . ' ' . $this->lastName; } - // All write operations go through this hook, and the result is what is written. - // Read access happens normally. + // すべての書き込み操作はこのフックを通り、返却値が書き込まれます。 + // 読み取りアクセスは通常通り行われます。 public string $firstName { set => ucfirst(strtolower($value)); } - // All write operations go through this hook, which has to write to the backing value itself. - // Read access happens normally. + // すべての書き込み操作はこのフックを通り、フックの中で値が書き込まれます。 + // 読み取りアクセスは通常通り行われます。 public string $lastName { set { if (strlen($value) < 2) { @@ -59,11 +63,10 @@ print $p->fullName; // Prints "Peter Peterson" - Asymmetric Property Visibility + 非対称可視性プロパティ - Object properties may now have their set visibility - controlled separately from the get visibility. + オブジェクトのプロパティは、set の可視性を get の可視性とは別に制御できるようになりました。 @@ -71,8 +74,8 @@ print $p->fullName; // Prints "Peter Peterson" - Lazy Objects + レイジーオブジェクト - It is now possible to create objects whose initialization is deferred until - they are accessed. Libraries and frameworks can leverage these lazy objects - to defer fetching data or dependencies required for initialization. + アクセスされるまで初期化が延期されるオブジェクトを作成できるようになりました。 + ライブラリやフレームワークは、これらのレイジーオブジェクトを利用して、 + 初期化に必要なデータや依存関係の取得を遅延させることができます。 @@ -122,75 +125,75 @@ $object = $reflector->newLazyGhost($initializer); - <code>#[\Deprecated]</code> attribute + <code>#[\Deprecated]</code> アトリビュート - The new Deprecated attribute can be used to mark functions, methods, - and class constants as deprecated. The behavior of functionality deprecated with this - attribute matches the behavior of the existing deprecation mechanism for functionality - provided by PHP itself. The only exception is that the emitted error code is - E_USER_DEPRECATED instead of E_DEPRECATED. + 新しい Deprecated 属性を使用して、関数、メソッド、 + およびクラス定数を非推奨としてマークできます。このアトリビュートで非推奨となった機能の動作は、 + PHP 自身が提供する既存の非推奨メカニズムの動作と一致します。 + 唯一の例外は、発生するエラーコードが + E_DEPRECATED ではなく E_USER_DEPRECATED であることです。 - Existing deprecations in functionality provided by PHP itself have been updated to use - the attribute, improving the emitted error messages by including a short explanation. + PHP 自身が提供する機能の既存の非推奨は、この属性を使用するように更新され、 + 短い説明を含むことでエラーメッセージが改善されました。 - Parsing RFC1867 (multipart) requests in non-POST HTTP requests + POST 以外の HTTP リクエストでの RFC1867 (マルチパート)リクエストの解析 - Added request_parse_body function that allows parsing - RFC1867 (multipart) requests in non-POST HTTP requests. + POST 以外の HTTP リクエストで RFC1867(マルチパート)リクエストを解析するための + request_parse_body 関数が追加されました。 - Chaining &new; expressions without parentheses + 括弧なしでの &new; 式のチェーン - New expressions with constructor arguments are now dereferencable, meaning - they allow chaining method calls, property accesses, etc. without enclosing - the expression in parentheses. + コンストラクタ引数を持つ &new; 式は直接参照できるようになり、 + 式を括弧で囲むことなくメソッド呼び出しや + プロパティアクセスなどのチェーンが可能になりました。 - Improved Debugging Info for <classname>WeakReference</classname> + <classname>WeakReference</classname> のデバッグ情報の改善 - Getting the debug info for WeakReference will now - also output the object it references, or &null; if the reference is no - longer valid. + WeakReference のデバッグ情報を取得すると、 + 参照しているオブジェクト、または参照が無効になっている場合は + &null; が出力されるようになりました。 - Improved Debugging Info for <classname>Closure</classname> + <classname>Closure</classname> のデバッグ情報の改善 - The output of Closure::__debugInfo now includes - the name, file, and line of the Closure. + Closure::__debugInfo の出力には、 + Closure の名前、ファイル名、および行が含まれるようになりました。 - Defining Identical Symbols in Different Namespace Blocks + 異なる名前空間ブロックで同一のシンボルを定義 - Exiting a namespace now clears seen symbols. - This allows using a symbol in a namespace block, even if a previous - namespace block declared a symbol with the same name. + 名前空間を終了すると、そこで定義されたシンボルがクリアされるようになりました。 + これにより、以前の名前空間ブロックで同じ名前のシンボルが宣言されていても、 + 名前空間ブロック内でシンボルを使用できるようになりました。 @@ -201,40 +204,41 @@ $object = $reflector->newLazyGhost($initializer); cURL - curl_version returns an additional - feature_list value, which is an associative array - of all known cURL features, and whether they are supported (&true;) - or not (&false;). + curl_version は、新たに + feature_list 値を返すようになりました。これは、 + 既知のすべての cURL 機能と、それらがサポートされているか(&true;)されていないか + (&false;)を示す連想配列です。 - Added CURL_HTTP_VERSION_3 and - CURL_HTTP_VERSION_3ONLY constants (available - since libcurl 7.66 and 7.88) as available options for - CURLOPT_HTTP_VERSION. + CURLOPT_HTTP_VERSION のオプションとして、 + CURL_HTTP_VERSION_3 および + CURL_HTTP_VERSION_3ONLY 定数 + (libcurl 7.66 および 7.88 から利用可能) + が追加されました。 - Added CURLOPT_PREREQFUNCTION as a cURL option that - accepts a callable to be called after the connection is made, - but before the request is sent. - This callable must return either CURL_PREREQFUNC_OK or - CURL_PREREQFUNC_ABORT to allow or abort the request. + cURL オプションとしてCURLOPT_PREREQFUNCTION が追加されました。 + 接続が確立された後、リクエストが送信される前に呼び出される + callable を受け入れます。 + この callable は、リクエストを許可または中止するために CURL_PREREQFUNC_OK または + CURL_PREREQFUNC_ABORT のいずれかを返す必要があります。 - Added CURLOPT_SERVER_RESPONSE_TIMEOUT, - which was formerly known as CURLOPT_FTP_RESPONSE_TIMEOUT. - Both constants hold the same value. + CURLOPT_SERVER_RESPONSE_TIMEOUT が追加されました。 + これは以前は CURLOPT_FTP_RESPONSE_TIMEOUT として知られていました。 + 両方の定数は同じ値を持ちます。 - Added CURLOPT_DEBUGFUNCTION as a cURL option that - accepts a callable that gets called during the request lifetime - with the CurlHandle object, - an integer containing the debug message type, and a string containing the - debug message. - The debug message type is one of the following constants: + cURL オプションとして CURLOPT_DEBUGFUNCTION が追加されました。 + リクエストの実行中に呼び出される callable を受け入れます。 + この callable は、CurlHandle オブジェクト、 + デバッグメッセージの種類を含む整数、 + およびデバッグメッセージを含む文字列を受け取ります。 + デバッグメッセージの種類は、次の定数のいずれかです: CURLINFO_TEXT CURLINFO_HEADER_IN @@ -244,19 +248,19 @@ $object = $reflector->newLazyGhost($initializer); CURLINFO_SSL_DATA_IN CURLINFO_SSL_DATA_OUT - Once this option is set, CURLINFO_HEADER_OUT - must not be set because it uses the same libcurl functionality. + このオプションを設定した場合、CURLINFO_HEADER_OUT を設定してはいけません。 + 同じ libcurl の機能を使用するためです。 - The curl_getinfo now returns an additional - posttransfer_time_us key, containing the number of - microseconds from the start until the last byte is sent. - When a redirect is followed, the time from each request is added together. - This value can also be retrieved by passing - CURLINFO_POSTTRANSFER_TIME_T to the - curl_getinfo option parameter. - This requires libcurl 8.10.0 or later. + curl_getinfo は、新たに + posttransfer_time_us キーを返すようになりました。 + これは、開始から最後のバイトが送信されるまでのマイクロ秒数を示します。 + リダイレクトが行われた場合、各リクエストの時間が合計されます。 + この値は、curl_getinfo の + option パラメータに + CURLINFO_POSTTRANSFER_TIME_T を渡すことでも取得できます。 + libcurl 8.10.0 以降が必要です。 @@ -266,17 +270,17 @@ $object = $reflector->newLazyGhost($initializer); - Added the Dom namespace with new classes as counterparts - to the existing DOM classes (e.g. Dom\Node is the new - DOMNode). - These classes are compatible with HTML 5 and are WHATWG spec-compliant; - solving long-standing bugs in the DOM extension. - The old DOM classes remain available for backwards compatibility. + Dom 名前空間と、既存の DOM クラスに対応する + 新たなクラスが追加されました(例: Dom\Node は + DOMNode に対応する新しいクラスです)。 + これらのクラスは HTML 5 に対応しており、WHATWG の仕様に準拠しています。 + これは DOM 拡張の長年のバグを解決します。 + 従来の DOM クラスも後方互換性のために引き続き利用可能です。 - Added the DOMNode::compareDocumentPosition - with its associated constants: + DOMNode::compareDocumentPosition + と関連する定数が追加されました: DOMNode::DOCUMENT_POSITION_DISCONNECTED DOMNode::DOCUMENT_POSITION_PRECEDING @@ -289,26 +293,12 @@ $object = $reflector->newLazyGhost($initializer); - It is now possible to pass any callable to - DOMXPath::registerPhpFunctions. + DOMXPath::registerPhpFunctions + に任意の callable を渡すことが可能になりました。 - Furthermore, with DOMXPath::registerPhpFunctionNs, - callbacks can now be registered that will use native function call syntax - rather than using php:function('name'). - - - - - - FPM - - - Flushing headers without a body will now succeed. - - - - - Status page has a new field to display a memory peak. + さらに、DOMXPath::registerPhpFunctionNs により、 + php:function('name') ではなく、ネイティブな関数呼び出し構文で + コールバックを登録できるようになりました。 @@ -316,9 +306,9 @@ $object = $reflector->newLazyGhost($initializer); Intl - Added the NumberFormatter::ROUND_HALFODD to - complement the existing NumberFormatter::ROUND_HALFEVEN - functionality. + NumberFormatter::ROUND_HALFODD が追加されました。 + 既存の NumberFormatter::ROUND_HALFEVEN 機能を + 補完します。 @@ -326,17 +316,17 @@ $object = $reflector->newLazyGhost($initializer); OpenSSL - Added support for Curve25519 + Curve448 based keys. - Specifically x25519, ed25519, x448 and ed448 fields are supported in - openssl_pkey_new, - openssl_pkey_get_details, - openssl_sign, and - openssl_verify were extended to support those keys. + Curve25519 および Curve448 ベースのキーのサポートが追加されました。 + 具体的には、x25519、ed25519、x448、ed448 フィールドが + openssl_pkey_new、 + openssl_pkey_get_details、 + openssl_sign、および + openssl_verify を、サポートするよう拡張されました。 - Implement PASSWORD_ARGON2 password hashing. - Requires OpenSSL 3.2 and NTS build. + パスワードのハッシュ方法として PASSWORD_ARGON2 が実装されました。 + これは OpenSSL 3.2 および NTS ビルドが必要です。 @@ -344,22 +334,22 @@ $object = $reflector->newLazyGhost($initializer); PCRE - The bundled pcre2lib has been updated to version 10.44. - As a consequence, LoongArch JIT support has been added, spaces - are now allowed between braces in Perl-compatible items, and - variable-length lookbehind assertions are now supported. + 同梱の pcre2lib がバージョン 10.44 に更新されました。 + これにより、LoongArch JIT サポートが追加され、 + Perl 互換のアイテムで波括弧間のスペースが許可され、 + 可変長の後読みアサーションがサポートされるようになりました。 - With pcre2lib version 10.44, the maximum length of named capture groups - has changed from 32 to 128. + pcre2lib バージョン 10.44 では、名前付きキャプチャグループの最大長が + 32 から 128 に変更されました。 - Added support for the r (PCRE2_EXTRA_CASELESS_RESTRICT) - modifier, as well as the (?r) mode modifier. - When enabled along with the case-insensitive modifier (i), - the expression locks out mixing of ASCII and non-ASCII characters. + r (PCRE2_EXTRA_CASELESS_RESTRICT) + 修飾子と (?r) モード修飾子のサポートされました。 + 大文字・小文字を区別しない修飾子 (i) と一緒に有効にすると、 + ASCII と非 ASCII 文字の混在が禁止されます。 @@ -368,24 +358,24 @@ $object = $reflector->newLazyGhost($initializer); - Added support for driver-specific subclasses. - This RFC adds subclasses for PDO in order to better support - database-specific functionalities. - The new classes are instantiatable either via calling the - PDO::connect method or by instantiating an instance - of the driver-specific subclass directly. + ドライバ固有のサブクラスのサポートが追加されました。 + PDO のサブクラスを追加することで、 + データベース固有の機能のサポートを向上します。 + 新しいクラスは、PDO::connect メソッドを呼び出すか、 + ドライバ固有のサブクラスを直接インスタンス化することで + 利用できます。 - Added support for driver specific SQL parsers. - The default parser supports: + ドライバ固有の SQL パーサーのサポートが追加されました。 + デフォルトのパーサーは以下をサポートします: - single and double-quoted literals, with doubling as escaping mechanism + シングルクオートやダブルクオートで囲まれたリテラルでのクオートの二重化によるエスケープ - two-dashes and non-nested C-style comments + 2 つのハイフンとネストされていない C スタイルのコメント @@ -396,18 +386,18 @@ $object = $reflector->newLazyGhost($initializer); - Added a custom parser supporting: + 以下をサポートするカスタムパーサーが追加されました: - single and double-quoted literals, with doubling and backslash as escaping - mechanism + シングルクオートやダブルクオートで囲まれたリテラルでのクオートの二重化やバックスラッシュによる + エスケープ - backtick literal identifiers and with doubling as escaping mechanism + バッククオートで囲まれたリテラルでのクオートの二重化によるエスケープ - two dashes followed by at least 1 whitespace, non-nested C-style comments, - and hash-comments + 1 つの空白が続く 2 つのハイフン、ネストされていない C スタイルのコメント、 + # によるコメント @@ -418,23 +408,22 @@ $object = $reflector->newLazyGhost($initializer); - Added a custom parser supporting: + 以下をサポートするカスタムパーサーが追加されました: - single and double-quoted literals, with doubling as escaping mechanism + シングルクオートやダブルクオートで囲まれたリテラルでのクオートの二重化によるエスケープ - C-style "escape" string literals (E'string') + C スタイルの「エスケープ」文字列リテラル (E'string') - dollar-quoted string literals + ドル記号で囲まれた文字列リテラル - two-dashes and C-style comments (non-nested) + 2 つのハイフンとネストされていない C スタイルのコメント - support for ?? as escape sequence for the - ? operator + ? 演算子のエスケープシーケンスとしての ?? のサポート @@ -445,17 +434,17 @@ $object = $reflector->newLazyGhost($initializer); - Added a custom parser supporting: + 以下をサポートするカスタムパーサーが追加されました: - single, double-quoted, and backtick literals, with doubling as - escaping mechanism + シングルクオート、ダブルクオート、バッククオートで囲まれたリテラルでのクオートの二重化による + エスケープ - square brackets quoting for identifiers + 識別子の角括弧によるクオート - two-dashes and C-style comments (non-nested) + 2 つのハイフンとネストされていない C スタイルのコメント @@ -465,7 +454,7 @@ $object = $reflector->newLazyGhost($initializer); Phar - Added support for the Unix timestamp extension for Zip archives. + Zip アーカイブの Unix タイムスタンプ拡張のサポートが追加されました。 @@ -473,8 +462,8 @@ $object = $reflector->newLazyGhost($initializer); Readfile - Added ability to change the .php_history path through - the PHP_HISTFILE environment variable. + PHP_HISTFILE 環境変数を利用し + .php_history パスを変更する機能が追加されました。 @@ -482,20 +471,20 @@ $object = $reflector->newLazyGhost($initializer); Reflection - ReflectionAttribute now contains a - name property to improve the debugging experience. + ReflectionAttribute に + デバッグ体験を向上させるための name プロパティが追加されました。 - ReflectionClassConstant::__toString and - ReflectionProperty::__toString now returns the - attached doc comments. + ReflectionClassConstant::__toStringおよび + ReflectionProperty::__toString は、 + 添付されたドキュメントコメントを返すようになりました。 - Multiple new methods and constants which are related to the lazy objects - feature have been added: + レイジーオブジェクト機能に関連する複数の新しいメソッドと定数が + 追加されました: @@ -523,10 +512,10 @@ $object = $reflector->newLazyGhost($initializer); ReflectionClass::getLazyInitializer - ReflectionClass::skipLazyInitialization + ReflectionProperty::skipLazyInitialization - ReflectionClass::setRawValueWithoutLazyInitialization + ReflectionProperty::setRawValueWithoutLazyInitialization ReflectionClass::SKIP_INITIALIZATION_ON_SERIALIZE @@ -542,20 +531,20 @@ $object = $reflector->newLazyGhost($initializer); SOAP - Added support for clark notation for namespaces in class map. - It is now possible to specify entries in a class map with clark notation - to resolve a type with a specific namespace to a specific class. - For example: '{http://example.com}foo' => 'FooClass'. + クラスマップでの名前空間のクラーク式記法のサポートが追加されました。 + クラスマップ内でクラーク式記法を使用して、 + 特定の名前空間の型を特定のクラスに解決するエントリを指定できるようになりました。 + 例: '{http://example.com}foo' => 'FooClass' - Instances of DateTimeInterface that are - passed to xsd:datetime or similar elements are now - serialized as such instead of being serialized as an empty string. + DateTimeInterface のインスタンスが + xsd:datetime や類似の要素に渡されると、 + 空の文字列としてではなく、そのままシリアライズされるようになりました。 - Session persistence now works with a shared session module. + 持続的セッションが共有セッションモジュールで動作するようになりました。 @@ -565,11 +554,11 @@ $object = $reflector->newLazyGhost($initializer); - Added a new RoundingMode enum with clearer naming - and improved discoverability compared to the - PHP_ROUND_* constants. - Moreover, four new rounding modes were added which are only available via - the new RoundingMode enum. + RoundingMode 列挙型が追加されました。 + PHP_ROUND_* 定数より + 明確な名前と発見性を提供します。 + さらに、4 つの新しい丸めモードが追加されました。これらは + RoundingMode 列挙型を介してのみ利用可能です。 @@ -577,21 +566,21 @@ $object = $reflector->newLazyGhost($initializer); XSL - It is now possible to use parameters that contain both single and double - quotes. + シングルクオートとダブルクオートの両方を含むパラメータを + 使用できるようになりました。 - It is now possible to pass any callable to - XSLTProcessor::registerPhpFunctions. + XSLTProcessor::registerPhpFunctions に + 任意の callable を渡すことが可能になりました。 - Added XSLTProcessor::$maxTemplateDepth and - XSLTProcessor::$maxTemplateVars - to control the recursion depth of XSL template evaluation. + XSLTProcessor::$maxTemplateDepth および + XSLTProcessor::$maxTemplateVars が追加されました。 + XSL テンプレート評価の再帰の深さを制御することができます。 @@ -599,8 +588,8 @@ $object = $reflector->newLazyGhost($initializer); Zip - Added the ZipArchive::ER_TRUNCATED_ZIP - constant, which was added in libzip 1.11. + ZipArchive::ER_TRUNCATED_ZIP + 定数が追加されました。これは libzip 1.11 で追加されました。 diff --git a/appendices/migration84/new-functions.xml b/appendices/migration84/new-functions.xml index 65d32eec8e..34b1c91da6 100644 --- a/appendices/migration84/new-functions.xml +++ b/appendices/migration84/new-functions.xml @@ -1,9 +1,12 @@ + + + - New Functions + 新しく追加された関数 - Core + PHP コア @@ -156,7 +159,7 @@ - The following methods relate to the new lazy object feature: + 次のメソッドは新しいレイジーオブジェクト機能に関連しています: ReflectionClass::newLazyGhost @@ -183,10 +186,10 @@ ReflectionClass::getLazyInitializer - ReflectionClass::skipLazyInitialization + ReflectionProperty::skipLazyInitialization - ReflectionClass::setRawValueWithoutLazyInitialization + ReflectionProperty::setRawValueWithoutLazyInitialization diff --git a/appendices/migration84/other-changes.xml b/appendices/migration84/other-changes.xml index 2d9e67192d..66c2814a6f 100644 --- a/appendices/migration84/other-changes.xml +++ b/appendices/migration84/other-changes.xml @@ -1,72 +1,76 @@ + + + - Other Changes + その他の変更 - Core changes + PHP コア - Closures + クロージャ - Closure names have been adjusted to include the parent function's name - and the line of definition to make them easier to distinguish, for example - within stack traces. + クロージャの名前が調整され、親関数の名前と + 定義の行番号を含むようになりました。これにより、 + スタックトレース内などでの識別が容易になります。 - Fibers + ファイバー(Fibers) - Fiber switching during destructor execution is now allowed. It was previously - blocked due to conflicts with garbage collection. + デストラクタ実行中にファイバーを切り替えられるようになりました。 + 以前はガベージコレクションとの競合のためブロックされていました。 - Destructors may now be executed in a separate Fiber: + デストラクタは別のファイバー内で実行される場合があります。 - When garbage collection is triggered in a Fiber, - destructors called by the GC are executed in a separate Fiber: - the gc_destructor_fiber. - If this Fiber suspends, a new one is created to execute the remaining - destructors. - The previous gc_destructor_fiber is not referenced anymore by the GC - and may be collected if it's not referenced anywhere else. - Objects whose destructor is suspended will not be collected until the - destructor returns or the Fiber is collected. + ガベージコレクションがファイバー内でトリガーされると、 + GC によって呼び出されるデストラクタは + 別のファイバー(gc_destructor_fiber)内で実行されます。 + このファイバーが中断された場合、残りのデストラクタを実行するために + 新しいファイバーが作成されます。 + 以前の gc_destructor_fiber は GC によって参照されなくなり、 + 他に参照されていなければ回収される可能性があります。 + デストラクタが中断されたオブジェクトは、 + デストラクタが戻るか Fiber が回収されるまで回収されません。 - Output Handlers + 出力ハンドラ - Output handler status flags passed to the flags - parameter of ob_start are now cleared. + ob_startflags パラメータに渡された + 出力ハンドラのステータスフラグがクリアされるようになりました。 - output_add_rewrite_var now uses - url_rewriter.hosts - instead of + output_add_rewrite_var は、 + リライトされるホストを選択するために + url_rewriter.hosts を使用するようになりました。 + 以前は session.trans_sid_hosts - for selecting hosts that will be rewritten. + を使用していました。 - Changes in SAPI Modules + SAPI モジュールへの変更 apache2handler - Support for EOL Apache 2.0 and 2.2 has been removed. - Minimum required Apache version is now 2.4. + EOLを迎えた Apache 2.0 および 2.2 のサポートが削除されました。 + 最小必要 Apache バージョンは 2.4 になりました。 @@ -74,35 +78,44 @@ CLI - The builtin server looks for an index file recursively by traversing parent - directories in case the specified file cannot be located. - This process was previously skipped if the path looked like it was - referring to a file, i.e. if the last path component contained a period. - In that case, a 404 error was returned. - The behavior has been changed to look for an index file in all cases. + 組み込みサーバーは、指定されたファイルが見つからない場合、 + 親ディレクトリをたどってインデックスファイルを再帰的に探します。 + このプロセスは、パスがファイルを指しているように見える場合 + (最後のパスコンポーネントにピリオドが含まれる場合)はスキップされていました。 + その場合、404 エラーが返されていました。 + この動作は、すべての場合にインデックスファイルを探すように変更されました。 FPM + + 本文なしでヘッダをフラッシュできるようになりました。 + + + + + ステータスページにメモリの最大使用量を表示するフィールドが追加されました。 + + - The /dev/poll events.mechanism - setting for Solaris/Illumos had been retired. + Solaris/Illumos 用の /dev/poll events.mechanism + 設定は廃止されました。 - Changed Functions + 変更された関数 - Core + PHP コア - trigger_error and user_error - now have a return type of true instead of bool. + trigger_error および user_error + は、戻り値の型が bool ではなく true になりました。 @@ -111,9 +124,8 @@ DOMDocument::registerNodeClass - now has a tentative return type of true instead of - bool. - It could only ever return &true; in practice. + は、戻り値の型が bool ではなく true になりました。 + 実際には常に &true; を返すことしかできませんでした。 @@ -122,9 +134,8 @@ hash_update - now has a tentative return type of true instead of - bool. - It could only ever return &true; in practice. + は、戻り値の型が bool ではなく true になりました。 + 実際には常に &true; を返すことしかできませんでした。 @@ -132,32 +143,32 @@ Intl - NumberFormatter::ROUND_TOWARD_ZERO and + NumberFormatter::ROUND_TOWARD_ZERO および NumberFormatter::ROUND_AWAY_FROM_ZERO - have been added as aliases for - NumberFormatter::ROUND_DOWN and + が、新しい PHP_ROUND_* + モードと一致するように、 + NumberFormatter::ROUND_DOWN および NumberFormatter::ROUND_UP - to be consistent with the new - PHP_ROUND_* modes. + のエイリアスとして追加されました。 ResourceBundle::get - now has a tentative return type of ResourceBundle|array|string|int|null. + は、戻り値の型が ResourceBundle|array|string|int|null になりました。 - The idn_to_ascii and idn_to_utf8 - functions now always throw ValueErrors - if the domain name is empty or too long. + idn_to_ascii および idn_to_utf8 + 関数は、domain 名が空または長すぎる場合、 + ValueError をスローするようになりました。 - The idn_to_ascii and idn_to_utf8 - functions now always throw ValueError - if the variant parameter is not - INTL_IDNA_VARIANT_UTS46. + idn_to_ascii および idn_to_utf8 + 関数は、variant パラメータが + INTL_IDNA_VARIANT_UTS46 でない場合、 + ValueError をスローするようになりました。 @@ -165,10 +176,10 @@ LibXML - libxml_set_streams_context now immediately throws a - TypeError when a non-stream-context - resource is passed to the function, - instead of throwing later when the stream context is used. + libxml_set_streams_context は、 + 非ストリームコンテキストリソースが関数に渡された場合、 + ストリームコンテキストが使用されるときではなく、 + 直ちに TypeError をスローするようになりました。 @@ -176,9 +187,9 @@ MBString - The behavior of mb_strcut is more consistent - now on invalid UTF-8 and UTF-16 strings. - There is no behavioural change for valid UTF-8 and UTF-16 strings. + mb_strcut の動作は、 + 無効な UTF-8 および UTF-16 文字列に対してより一貫性のあるものになりました。 + 有効な UTF-8 および UTF-16 文字列に対する動作の変更はありません。 @@ -186,16 +197,16 @@ ODBC - The row of - odbc_fetch_object, - odbc_fetch_array, and - odbc_fetch_into now have a default value of &null;, - consistent with odbc_fetch_row. - Previously, the default values were - -1, - -1, - and 0, - respectively. + odbc_fetch_object、 + odbc_fetch_array、および + odbc_fetch_into の + row は、デフォルト値が &null; になり、 + odbc_fetch_row と一致するようになりました。 + 以前は、それぞれデフォルト値が + -1、 + -1、 + 0 + でした。 @@ -203,28 +214,29 @@ OpenSSL - The extra_attributes in - openssl_csr_new sets the CSR - attributes instead of subject DN, which incorrectly done previously. + openssl_csr_new の + extra_attributes は、 + CSR 属性を設定します。 + 以前はサブジェクト DN が誤って設定されていました。 - The dn in - openssl_csr_new allows setting an array - of values for a single entry. + openssl_csr_new の + dn は、 + 単一のエントリに対して値の array を設定できるようになりました。 - New serial_hex added to - openssl_csr_sign to allow setting serial numbers - in the hexadecimal format. + openssl_csr_sign に新たに + serial_hex が追加され、 + 16 進形式でシリアル番号を設定できるようになりました。 - Parsing ASN.1 UTCTime with openssl_x509_parse - fails if seconds are omitted for OpenSSL version below 3.2 - (-1 is returned for such fields). - OpenSSL version above 3.3 did not load such certificates already. + openssl_x509_parse で ASN.1 UTCTime を解析する際、 + OpenSSL バージョン 3.2 未満では秒が省略されていると失敗します + (そのようなフィールドでは -1 が返されます)。 + OpenSSL バージョン 3.3 以降では、そのような証明書は読み込むことができません。 @@ -232,15 +244,15 @@ PDO - It is now possible to fetch the value of the - PDO::ATTR_STRINGIFY_FETCHES attribute with - PDO::getAttribute. + PDO::getAttribute で + PDO::ATTR_STRINGIFY_FETCHES + 属性の値を取得できるようになりました。 - A new PDO::PGSQL_ATTR_RESULT_MEMORY_SIZE - has been added to retrieve the memory usage of query results with - PDO::getAttribute for drivers that support it. + PDO::PGSQL_ATTR_RESULT_MEMORY_SIZE が追加されました。 + サポートされているドライバで PDO::getAttribute を使用して + クエリ結果のメモリ使用量を取得できるようになりました。 @@ -248,19 +260,17 @@ PDO_FIREBIRD - It is now possible to fetch the value of the - - FB_ATTR_DATE_FORMAT, - FB_ATTR_TIME_FORMAT, - FB_ATTR_TIMESTAMP_FORMAT, - attributes with - PDO::getAttribute. + PDO::getAttribute で + + FB_ATTR_DATE_FORMAT、 + FB_ATTR_TIME_FORMAT、 + FB_ATTR_TIMESTAMP_FORMAT 属性の値を取得できるようになりました。 - Added new attributes to specify transaction isolation level and access mode. - Five constants relating to this functionality have been added: + トランザクションの分離レベルとアクセスモードを指定するための新しい属性が追加されました。 + この機能のため 5 つの定数が追加されました: Pdo\Firebird::TRANSACTION_ISOLATION_LEVEL @@ -272,21 +282,20 @@ - When using persistent connections, there is now a liveliness check in the - constructor. + 永続的な接続を使用する場合、コンストラクタ内での生存チェックが追加されました。 - The content that is built changes depending on the value of - FB_API_VER in - ibase.h. - A new static method Pdo\Firebird::getApiVersion - can be used to obtain this information. - This information is also now referenced in phpinfo. + ビルドされる内容は、 + ibase.h 内の + FB_API_VER の値によって変わります。 + この情報を取得するために新しい静的メソッド Pdo\Firebird::getApiVersion + が追加されました。 + この情報は phpinfo からも参照できます。 - Five new data types are now available: + 5 つの新しいデータ型が利用可能になりました: INT128 DEC16 @@ -294,8 +303,8 @@ TIMESTAMP_TZ TIME_TZ - . - These are available starting with Firebird 4.0. + + これらは Firebird 4.0 以降で利用可能です。 @@ -303,10 +312,10 @@ PDO_MYSQL - It is now possible to fetch the value of the - PDO::ATTR_FETCH_TABLE_NAMES attribute with - PDO::getAttribute. + PDO::getAttribute で + PDO::ATTR_FETCH_TABLE_NAMES 属性の + 値を取得できるようになりました。 @@ -314,14 +323,14 @@ PDO_PGSQL - Support retrieving the memory usage of queries for - PDO::PGSQL_ATTR_RESULT_MEMORY_SIZE. + PDO::PGSQL_ATTR_RESULT_MEMORY_SIZE + によるクエリのメモリ使用量の取得をサポートしました。 - If the column is of type FLOAT4OID or - FLOAT8OID the value will now be returned as a - float instead of a string. + カラムが FLOAT4OID または + FLOAT8OID 型の場合、値は + string ではなく float として返されるようになりました。 @@ -329,8 +338,8 @@ PGSQL - The conditions parameter of - pg_select is now optional and accepts an empty array. + pg_selectconditions パラメータ + はオプションになり、空の配列を受け入れるようになりました。 @@ -338,13 +347,12 @@ Phar - The Phar::setAlias Phar::setDefaultStub - methods now have a tentative return type of true - instead of bool. + は、戻り値の型が bool ではなく + true になりました。 @@ -352,8 +360,8 @@ POSIX - posix_isatty now sets the error number when the - file descriptor/stream argument is invalid. + posix_isatty は、 + ファイル記述子/ストリーム引数が無効な場合エラー番号を設定するようになりました。 @@ -362,7 +370,7 @@ ReflectionGenerator::getFunction - may now be called after the generator finished executing. + は、ジェネレータの実行が終了した後でも呼び出すことができるようになりました。 @@ -370,10 +378,10 @@ Sockets - The backlog parameter of - socket_create_listen now has a default value of - SOMAXCONN. - Previously, it was 128. + socket_create_listen の + backlog パラメータのデフォルト値は + SOMAXCONN になりました。 + 以前は 128 でした。 @@ -381,9 +389,9 @@ Sodium - The sodium_crypto_aead_aes256gcm_* - functions are now available on aarch64 CPUs with the ARM cryptographic - extensions. + sodium_crypto_aead_aes256gcm_* + 関数は、ARM 暗号化拡張を持つ aarch64 CPU で + 利用可能になりました。 @@ -391,20 +399,19 @@ SPL - The SplPriorityQueue::insert SplPriorityQueue::recoverFromCorruption SplHeap::insert SplHeap::recoverFromCorruption - methods now have a tentative return type of true - instead of bool. + メソッドは、戻り値の型が bool ではなく + true になりました。 - SplObjectStorage now implements - SeekableIterator. + SplObjectStorage は + SeekableIterator を実装するようになりました。 @@ -413,50 +420,50 @@ - The default 'cost' value for the PASSWORD_BCRYPT - hashing algorithm for password_hash has been increased from - 10 to 12. + PASSWORD_BCRYPT ハッシュアルゴリズムの + password_hash のデフォルトの 'cost' 値が + 10 から 12 に引き上げられました。 - debug_zval_dump now indicates whether an array is packed. + debug_zval_dump は、配列がパックされているかどうかを示すようになりました。 - long2ip now has a return type of string - instead of string|false. + long2ip は、戻り値の型が string|false ではなく + string になりました。 + highlight_string は、戻り値の型が - highlight_string now has a return type of - string|true instead of string|bool. + string|bool ではなくstring|true になりました。 + print_r は、戻り値の型が - print_r now has a return type of - string|true instead of string|bool. + string|bool ではなく string|true になりました。 - Rounding with <function>round</function> + <function>round</function> による丸め処理 - The mode parameter of the - round function has been widened to + round 関数の + mode パラメータは、 - RoundingMode|int, + RoundingMode|int に拡張され、 - accepting instances of a new RoundingMode enum. + 新たに追加された RoundingMode 列挙型のインスタンスを受け入れます。 - Four new modes have been added to the round function: + round 関数に 4 つの新しいモードが追加されました: RoundingMode::PositiveInfinity RoundingMode::NegativeInfinity @@ -467,32 +474,32 @@ - The internal implementation for rounding to integers has been rewritten - to be easier to verify for correctness and to be easier to maintain. - Some rounding bugs have been fixed as a result of the rewrite. - For example previously rounding 0.49999999999999994 - to the nearest integer would have resulted in 1.0 - instead of the correct result 0.0. - Additional inputs might also be affected and result in different outputs - compared to earlier PHP versions. + 整数への丸めのための内部実装が、正確さの検証と + メンテナンスの容易さのために書き直されました。 + その結果、いくつかの丸め処理のバグが修正されました。 + 例えば、以前は 0.49999999999999994を最も近い整数に丸めると、 + 正しい結果の 0.0 ではなく + 1.0 になっていました。 + 他の入力も影響を受け、以前の PHP バージョンと比較して + 異なる出力になる場合があります。 - Fixed a bug caused by "pre-rounding" of the round function. - Previously, using "pre-rounding" to treat a value like 0.285 - (actually 0.28499999999999998) as a decimal number - and round it to 0.29. - However, "pre-rounding" incorrectly rounds certain numbers, - so this fix removes "pre-rounding" and changes the way numbers are compared, - so that the values are correctly rounded as decimal numbers. + round 関数の「事前丸め」によるバグが修正されました。 + 以前は、「事前丸め」により 0.285 + (実際には 0.28499999999999998)のような値を + 10 進数として、0.29 に丸めていました。 + しかし、「事前丸め」は特定の数値を誤って丸めるため、 + この修正では「事前丸め」を削除し、値同士の比較方法を変更することで、 + 値が 10 進数として正しく丸められるようにしました。 - The maximum precision that can be handled by round - has been extended by one digit. - For example, round(4503599627370495.5) returned in - 4503599627370495.5, - but now returns 4503599627370496. + round が処理できる最大精度が + 1桁増えました。 + 例えば、round(4503599627370495.5) は以前は + 4503599627370495.5 を返していましたが、 + 現在は 4503599627370496 を返します。 @@ -501,20 +508,20 @@ - Other Changes to Extensions + 拡張モジュールへのその他の変更 cURL - The minimum libcurl version required is now 7.61.0. + 最小必要 libcurl バージョンは 7.61.0 になりました。 - The CURLOPT_DNS_USE_GLOBAL_CACHE option no longer - has any effect, and is silently ignored. - This underlying feature was deprecated in libcurl 7.11.1, - and removed in libcurl 7.62.0. + CURLOPT_DNS_USE_GLOBAL_CACHE オプションは + もはや効果がなく、通知なく無視されます。 + この基本機能は libcurl 7.11.1 で非推奨となり、 + libcurl 7.62.0 で削除されました。 @@ -523,10 +530,10 @@ - Casting a GMP object to bool is now - possible instead of emitting a E_RECOVERABLE_ERROR. - The casting behaviour is overloaded such that a GMP - object representing the value 0 is cast to &false;. + GMP オブジェクトを bool に + キャストできるようになりました。以前は E_RECOVERABLE_ERROR が発生していました。 + キャストの動作はオーバーロードされ、値が 0 を表す + GMP オブジェクトは &false; にキャストされます。 @@ -534,7 +541,7 @@ LibXML - The minimum libxml2 version required is now 2.9.4. + 最小必要 libxml2 バージョンは 2.9.4 になりました。 @@ -542,9 +549,9 @@ Intl - The behaviour of Intl class has been normalized to always throw - Error exceptions when attempting to use - a non-initialized object, or when cloning fails. + Intl クラスの動作が統一され、 + 初期化されていないオブジェクトを使用しようとした場合やクローンに失敗した場合に、 + Error 例外をスローするようになりました。 @@ -552,7 +559,7 @@ MBString - Unicode data tables have been updated to Unicode 16.0. + Unicode データテーブルが Unicode 16.0 に更新されました。 @@ -560,7 +567,7 @@ MySQLnd - Support for the new VECTOR data type from MySQL 9. + MySQL 9 の新しい VECTOR データ型のサポート。 @@ -568,7 +575,7 @@ OpenSSL - The minimum OpenSSL version required is now 1.1.1. + 最小必要 OpenSSL バージョンは 1.1.1 になりました。 @@ -576,7 +583,7 @@ PDO_PGSQL - The minimum libpq version required is now 10.0. + 最小必要 libpq バージョンは 10.0 になりました。 @@ -584,7 +591,7 @@ PGSQL - The minimum libpq version required is now 10.0. + 最小必要 libpq バージョンは 10.0 になりました。 @@ -592,12 +599,12 @@ SPL - Out of bounds accesses in SplFixedArray now throw - exceptions of type OutOfBoundsException - instead of RuntimeException. - Because OutOfBoundsException is a child - class of RuntimeException no behavioural - changes are exhibited when attempting to catch those exceptions. + SplFixedArray での範囲外アクセスは、 + RuntimeException ではなく + OutOfBoundsException 型の例外をスローするようになりました。 + OutOfBoundsException は + RuntimeException の子クラスであるため、 + これらの例外をキャッチしようとする際の動作に変更はありません。 @@ -605,8 +612,8 @@ XSL - The typed properties XSLTProcessor::$cloneDocument - and XSLTProcessor::$doXInclude are now declared + 型付きプロパティ XSLTProcessor::$cloneDocument + および XSLTProcessor::$doXInclude が定義されました。 @@ -614,30 +621,30 @@ Zlib - The minimum zlib version required is now 1.2.11. + 最小必要 zlib バージョンは 1.2.11 になりました。 - Performance + パフォーマンス - Core + PHP コア - Improved the performance of floating point number parsing and formatting in - ZTS builds under highly concurrent loads. - This affects the printf family of functions as well - as serialization functions such as json_encode, - or serialize. + ZTS ビルドにおける高負荷の並行処理環境下で、 + 浮動小数点数の解析とフォーマットのパフォーマンスが向上しました。 + これは printf 系の関数や + json_encodeserialize + などのシリアライズ関数に影響します。 - sprintf using only %s and - %d specifiers will be compiled into the equivalent - string interpolation, avoiding the overhead of a function call and - repeatedly parsing the format string. + %s%d 指定子のみを使用する + sprintf は、同等の文字列補間にコンパイルされ、 + 関数呼び出しのオーバーヘッドとフォーマット文字列の + 繰り返し解析を回避します。 @@ -645,7 +652,7 @@ BCMath - Improved performance of number conversions and operations. + 数値の変換と演算のパフォーマンスが向上しました。 @@ -653,18 +660,18 @@ DOM - The performance of DOMNode::C14N is greatly - improved for the case without an xpath query. - This can give a time improvement of easily two order of - magnitude for documents with tens of thousands of nodes. + DOMNode::C14N のパフォーマンスが、 + xpath クエリなしの場合に大幅に向上しました。 + これは数万ノードのドキュメントで簡単に 2 桁の + 時間改善をもたらします。 - Improved performance and reduce memory consumption of XML serialization. + XML シリアライズのパフォーマンスが向上し、メモリ消費が削減されました。 - Reduced memory usage of node classes. + ノードクラスのメモリ使用量が削減されました。 @@ -672,8 +679,8 @@ FTP - Improved the performance of FTP uploads up to a factor of 10x for large - uploads. + 大きなアップロードで FTP アップロードのパフォーマンスが + 最大 10 倍向上しました。 @@ -681,10 +688,10 @@ Hash - Added SSE2 and SHA-NI implementations of SHA-256. - This improves the performance on supported CPUs by ~1.3x (SSE2), - and 3x - 5x (SHA-NI). - Credit to Colin Percival / Tarsnap for this optimization. + SHA-256 の SSE2 および SHA-NI 実装が追加されました。 + これにより、サポートされている CPU でのパフォーマンスが SSE2 で最大 1.3 倍、 + SHA-NIで 3から 5 倍向上します。 + この最適化は Colin Percival / Tarsnap の功績です。 @@ -692,16 +699,16 @@ MBString - mb_strcut is much faster now for UTF-8 - and UTF-16 strings. + mb_strcut は UTF-8 および + UTF-16 文字列で大幅に高速になりました。 - Looking up mbstring encoding names is much faster now. + mbstring のエンコーディング名の検索が大幅に高速になりました。 - The performance of converting SJIS-win to Unicode is greatly improved. + SJIS-win から Unicode への変換のパフォーマンスが大幅に向上しました。 @@ -709,7 +716,7 @@ MySQLnd - Improved the performance of MySQLnd quoting. + MySQLnd のクオートのパフォーマンスが向上しました。 @@ -717,7 +724,7 @@ PCRE - Improved the performance of named capture groups. + 名前付きキャプチャグループのパフォーマンスが向上しました。 @@ -725,10 +732,9 @@ Random - Improved the performance of Random\Randomizer, - with a specific focus on the - Random\Randomizer::getBytes, - and Random\Randomizer::getBytesFromString methods. + Random\Randomizer のパフォーマンスが向上しました。 + 特に Random\Randomizer::getBytes と + Random\Randomizer::getBytesFromString メソッドで顕著です。 @@ -736,7 +742,7 @@ SimpleXML - Improved performance and reduce memory consumption of XML serialization. + XML シリアライズのパフォーマンスが向上し、メモリ消費が削減されました。 @@ -744,18 +750,18 @@ Standard - The performance of strspn and - strcspn is greatly improved. - They now run in linear time instead of being bounded by quadratic time. + strspn および strcspn の + パフォーマンスが大幅に向上しました。 + 二乗時間ではなく、線形時間で実行されるようになりました。 - Improved the performance of strpbrk. + strpbrk のパフォーマンスが向上しました。 - get_browser is much faster now, - up to 1.5x - 2.5x for some test cases. + get_browser は大幅に高速になり、 + いくつかのテストケースで最大 1.5 倍から 2.5 倍の速度向上を実現しました。 diff --git a/appendices/migration84/removed-extensions.xml b/appendices/migration84/removed-extensions.xml index 4e49f4062b..8223de5dc5 100644 --- a/appendices/migration84/removed-extensions.xml +++ b/appendices/migration84/removed-extensions.xml @@ -1,11 +1,14 @@ + + + - Removed Extensions + 削除された拡張モジュール - These extensions have been moved to PECL and are no longer part of the PHP - distribution. New releases for the PECL packages will be published on an - ad-hoc basis according to user demand. + これらの拡張モジュールは PECL に移行され、 + PHP 配布の一部ではなくなりました。PECL パッケージの新しいリリースは、 + ユーザーの需要に応じて随時公開されます。 diff --git a/appendices/migration84/windows-support.xml b/appendices/migration84/windows-support.xml index 645d79fbf1..b66c080f82 100644 --- a/appendices/migration84/windows-support.xml +++ b/appendices/migration84/windows-support.xml @@ -1,23 +1,26 @@ + + + - Windows Support + Windows のサポート - Core + PHP コア - Building with Visual Studio now requires at least Visual Studio 2019. - However, Visual Studio 2022 is recommended. + Visual Studio でのビルドには、 Visual Studio 2019 以降が必要になりました。 + ただし、Visual Studio 2022 が推奨されます。 - AVX(2) CPU support is now properly detected for MSVC builds. + MSVC ビルドでは、AVX(2) CPU のサポートが正しく検出されるようになりました。 - Native AVX-512 builds are now supported via the + ネイティブ AVX-512 ビルドが、configure オプション - configure option. + でサポートされました。