Skip to content

Commit 309a439

Browse files
PHP 8.4/8.5 関連の原文更新を同期し、HashContext::__debugInfo を新規翻訳 (#397)
## 翻訳内容 ### fatal_error_backtraces INI ディレクティブの文書化(2件) - reference/errorfunc/ini.xml — fatal_error_backtraces ディレクティブの説明とクイックリファレンス表の行を追加 1. php/doc-en@c7b445ec85 - appendices/migration85/other-changes.xml — 既訳の fatal_error_backtraces の記述に、新設された説明へのリンクを反映 1. php/doc-en@c7b445ec85 ### unserialize の allowed_classes オプションと列挙型(2件) - reference/var/functions/unserialize.xml — allowed_classes が列挙型に影響しない旨の注記と、大文字 "S" タグが非推奨になった旨の 8.4.0 changelog を追加 1. php/doc-en@17ebcd2ea1 2. php/doc-en@8af3521cb4 - language/enumerations.xml — 同じ注記をシリアライズの節に追加。コード例を原文のコーディングスタイル変更に合わせて更新(訳文への影響なし) 1. php/doc-en@4c158f4a34 2. php/doc-en@8af3521cb4 ### PHP 8.4.0 の changelog 追加(3件) - reference/spl/splfixedarray.xml — 範囲外アクセスの例外が OutOfBoundsException になった旨を追加 1. php/doc-en@4d17b7b494 (マークアップ変換は反映済みのため本 PR に差分なし) 2. php/doc-en@17ebcd2ea1 - reference/filesystem/functions/tempnam.xml — 作成されるファイル名が 13 バイト長くなった旨を追加 1. php/doc-en@17ebcd2ea1 - reference/var/functions/debug-zval-dump.xml — changelog セクションを新設し、配列がパックされているかどうかを示すようになった旨を追加 1. php/doc-en@17ebcd2ea1 ### 独立ファイル - reference/datetime/dateinterval/createfromdatestring.xml — changelog の row マークアップの誤りを原文の修正に合わせて修正(8.2.0 と 8.3.0 のエントリを別々の row に分離) 1. php/doc-en@82f00c8d4d - reference/hash/hashcontext/debuginfo.xml — HashContext::__debugInfo(PHP 8.4 で追加)の新規翻訳 1. php/doc-en@ed4d79beef
1 parent 0b76b9b commit 309a439

9 files changed

Lines changed: 231 additions & 22 deletions

File tree

‎appendices/migration85/other-changes.xml‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<!-- $Revision$ -->
3-
<!-- EN-Revision: 6b48f364497107ae46f926bfc99a4e3d9d546316 Maintainer: mumumu Status: ready -->
3+
<!-- EN-Revision: c7b445ec851969e669026cfa483b104ea2de5d95 Maintainer: mumumu Status: ready -->
44
<sect1 xml:id="migration85.other-changes">
55
<title>その他の変更</title>
66

@@ -440,7 +440,8 @@
440440

441441
<simpara>
442442
致命的なエラーにバックトレースを含めるかどうかを制御するために、
443-
fatal_error_backtraces INI ディレクティブが追加されました。
443+
<link linkend="ini.fatal-error-backtraces">fatal_error_backtraces</link>
444+
INI ディレクティブが追加されました。
444445
<!-- RFC: https://wiki.php.net/rfc/error_backtraces_v2 -->
445446
</simpara>
446447

‎language/enumerations.xml‎

Lines changed: 52 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<!-- $Revision$ -->
3-
<!-- EN-Revision: 1eb67bea30f61f7d9cdfd371146911a0ba07bbd2 Maintainer: mumumu Status: ready -->
3+
<!-- EN-Revision: 8af3521cb43f54c652baaf8dbbcb786b79a5d04e Maintainer: mumumu Status: ready -->
44
<chapter xml:id="language.enumerations" xmlns="http://docbook.org/ns/docbook" annotations="interactive">
55
<title>列挙型(Enum)</title>
66
<sect1 xml:id="language.enumerations.overview">
@@ -46,6 +46,7 @@
4646
<programlisting role="php" annotations="non-interactive">
4747
<![CDATA[
4848
<?php
49+
4950
enum Suit
5051
{
5152
case Hearts;
@@ -70,6 +71,7 @@ enum Suit
7071
<programlisting role="php">
7172
<![CDATA[
7273
<?php
74+
7375
enum Suit
7476
{
7577
case Hearts;
@@ -121,6 +123,7 @@ pick_a_card('Spades');
121123
<programlisting role="php">
122124
<![CDATA[
123125
<?php
126+
124127
enum Suit
125128
{
126129
case Hearts;
@@ -176,6 +179,7 @@ if ($a !== 'Spades') {
176179
<programlisting role="php">
177180
<![CDATA[
178181
<?php
182+
179183
enum Suit
180184
{
181185
case Hearts;
@@ -222,6 +226,7 @@ print Suit::Spades->name;
222226
<programlisting role="php" annotations="non-interactive">
223227
<![CDATA[
224228
<?php
229+
225230
enum Suit: string
226231
{
227232
case Hearts = 'H';
@@ -276,6 +281,7 @@ enum Suit: string
276281
<programlisting role="php">
277282
<![CDATA[
278283
<?php
284+
279285
enum Suit: string
280286
{
281287
case Hearts = 'H';
@@ -300,6 +306,7 @@ print Suit::Clubs->value;
300306
<programlisting role="php">
301307
<![CDATA[
302308
<?php
309+
303310
enum Suit: string
304311
{
305312
case Hearts = 'H';
@@ -357,6 +364,7 @@ $ref = &$suit->value;
357364
<programlisting role="php">
358365
<![CDATA[
359366
<?php
367+
360368
enum Suit: string
361369
{
362370
case Hearts = 'H';
@@ -409,6 +417,7 @@ print $suit->value . "\n";
409417
<programlisting role="php">
410418
<![CDATA[
411419
<?php
420+
412421
interface Colorful
413422
{
414423
public function color(): string;
@@ -424,7 +433,7 @@ enum Suit implements Colorful
424433
// インターフェイスの規約を満たすための実装
425434
public function color(): string
426435
{
427-
return match($this) {
436+
return match ($this) {
428437
Suit::Hearts, Suit::Diamonds => 'Red',
429438
Suit::Clubs, Suit::Spades => 'Black',
430439
};
@@ -465,6 +474,7 @@ print Suit::Diamonds->shape(); // "Rectangle" と表示
465474
<programlisting role="php" annotations="non-interactive">
466475
<![CDATA[
467476
<?php
477+
468478
interface Colorful
469479
{
470480
public function color(): string;
@@ -480,7 +490,7 @@ enum Suit: string implements Colorful
480490
// インターフェイスの規約を満たすための実装
481491
public function color(): string
482492
{
483-
return match($this) {
493+
return match ($this) {
484494
Suit::Hearts, Suit::Diamonds => 'Red',
485495
Suit::Clubs, Suit::Spades => 'Black',
486496
};
@@ -518,6 +528,7 @@ enum Suit: string implements Colorful
518528
<programlisting role="php" annotations="non-interactive">
519529
<![CDATA[
520530
<?php
531+
521532
interface Colorful
522533
{
523534
public function color(): string;
@@ -534,7 +545,7 @@ final class Suit implements UnitEnum, Colorful
534545
535546
public function color(): string
536547
{
537-
return match($this) {
548+
return match ($this) {
538549
Suit::Hearts, Suit::Diamonds => 'Red',
539550
Suit::Clubs, Suit::Spades => 'Black',
540551
};
@@ -575,6 +586,7 @@ final class Suit implements UnitEnum, Colorful
575586
<programlisting role="php">
576587
<![CDATA[
577588
<?php
589+
578590
enum Size
579591
{
580592
case Small;
@@ -583,7 +595,7 @@ enum Size
583595
584596
public static function fromLength(int $cm): self
585597
{
586-
return match(true) {
598+
return match (true) {
587599
$cm < 50 => self::Small,
588600
$cm < 100 => self::Medium,
589601
default => self::Large,
@@ -622,6 +634,7 @@ var_dump(Size::fromLength(50));
622634
<programlisting role="php">
623635
<![CDATA[
624636
<?php
637+
625638
enum Size
626639
{
627640
case Small;
@@ -654,14 +667,16 @@ var_dump(Size::Huge);
654667
<programlisting role="php">
655668
<![CDATA[
656669
<?php
670+
657671
interface Colorful
658672
{
659673
public function color(): string;
660674
}
661675
662676
trait Rectangle
663677
{
664-
public function shape(): string {
678+
public function shape(): string
679+
{
665680
return "Rectangle";
666681
}
667682
}
@@ -677,7 +692,7 @@ enum Suit implements Colorful
677692
678693
public function color(): string
679694
{
680-
return match($this) {
695+
return match ($this) {
681696
Suit::Hearts, Suit::Diamonds => 'Red',
682697
Suit::Clubs, Suit::Spades => 'Black',
683698
};
@@ -718,6 +733,7 @@ var_dump($suit->shape());
718733
<programlisting role="php" annotations="non-interactive">
719734
<![CDATA[
720735
<?php
736+
721737
// これは、完全に正しい列挙型の定義です
722738
enum Direction implements ArrayAccess
723739
{
@@ -833,6 +849,7 @@ $foo = new Foo();
833849
<programlisting role="php" annotations="non-interactive">
834850
<![CDATA[
835851
<?php
852+
836853
$clovers = new Suit();
837854
// Error: Cannot instantiate enum Suit
838855
@@ -859,6 +876,7 @@ $horseshoes = (new ReflectionClass(Suit::class))->newInstanceWithoutConstructor(
859876
<programlisting role="php">
860877
<![CDATA[
861878
<?php
879+
862880
enum Suit
863881
{
864882
case Hearts;
@@ -904,6 +922,7 @@ var_dump(SuitBacked::cases());
904922
<programlisting role="php">
905923
<![CDATA[
906924
<?php
925+
907926
enum Suit: string
908927
{
909928
case Hearts = 'H';
@@ -926,6 +945,12 @@ print serialize(Suit::Hearts);
926945
警告が発生し、&false; が返されます。
927946
</para>
928947

948+
<simpara>
949+
<function>unserialize</function> の
950+
<literal>allowed_classes</literal> オプションは、
951+
<link linkend="language.enumerations">列挙型(Enum)</link> には影響しません。
952+
</simpara>
953+
929954
<para>
930955
Pure Enum を JSON にシリアライズしようとすると、
931956
Error がスローされます。
@@ -946,11 +971,14 @@ print serialize(Suit::Hearts);
946971
<programlisting role="php">
947972
<![CDATA[
948973
<?php
949-
enum Foo {
974+
975+
enum Foo
976+
{
950977
case Bar;
951978
}
952979
953-
enum Baz: int {
980+
enum Baz: int
981+
{
954982
case Beep = 5;
955983
}
956984
@@ -983,12 +1011,14 @@ Baz Enum:int {
9831011
<programlisting role="php" annotations="non-interactive">
9841012
<![CDATA[
9851013
<?php
1014+
9861015
class A {}
9871016
class B extends A {}
9881017
9891018
function foo(A $a) {}
9901019
991-
function bar(B $b) {
1020+
function bar(B $b)
1021+
{
9921022
foo($b);
9931023
}
9941024
]]>
@@ -1007,7 +1037,9 @@ function bar(B $b) {
10071037
<programlisting role="php" annotations="non-interactive">
10081038
<![CDATA[
10091039
<?php
1010-
enum ErrorCode {
1040+
1041+
enum ErrorCode
1042+
{
10111043
case SOMETHING_BROKE;
10121044
}
10131045
@@ -1034,13 +1066,16 @@ function quux(ErrorCode $errorCode)
10341066
<programlisting role="php" annotations="non-interactive">
10351067
<![CDATA[
10361068
<?php
1069+
10371070
// 列挙型が final でなかったと仮定した、思考実験のコード
10381071
// このコードは実際には動作しないので注意
1039-
enum MoreErrorCode extends ErrorCode {
1072+
enum MoreErrorCode extends ErrorCode
1073+
{
10401074
case PEBKAC;
10411075
}
10421076
1043-
function fot(MoreErrorCode $errorCode) {
1077+
function fot(MoreErrorCode $errorCode)
1078+
{
10441079
quux($errorCode);
10451080
}
10461081
@@ -1073,6 +1108,7 @@ fot(MoreErrorCode::PEBKAC);
10731108
<programlisting role="php" annotations="non-interactive">
10741109
<![CDATA[
10751110
<?php
1111+
10761112
enum SortOrder
10771113
{
10781114
case Asc;
@@ -1106,6 +1142,7 @@ function query($fields, $filter, SortOrder $order = SortOrder::Asc)
11061142
<programlisting role="php">
11071143
<![CDATA[
11081144
<?php
1145+
11091146
enum UserStatus: string
11101147
{
11111148
case Pending = 'P';
@@ -1115,7 +1152,7 @@ enum UserStatus: string
11151152
11161153
public function label(): string
11171154
{
1118-
return match($this) {
1155+
return match ($this) {
11191156
self::Pending => 'Pending',
11201157
self::Active => 'Active',
11211158
self::Suspended => 'Suspended',
@@ -1152,6 +1189,7 @@ var_dump($status->label());
11521189
<programlisting role="php">
11531190
<![CDATA[
11541191
<?php
1192+
11551193
enum UserStatus: string
11561194
{
11571195
case Pending = 'P';

‎reference/datetime/dateinterval/createfromdatestring.xml‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<!-- $Revision$ -->
3-
<!-- EN-Revision: 9eb962113cadccc164d196003062ff5d893de3a5 Maintainer: takagi Status: ready -->
3+
<!-- EN-Revision: 82f00c8d4d4f09fa5a363bc0c6f48e0c80eea72d Maintainer: takagi Status: ready -->
44
<!-- Credits: mumumu -->
55

66
<refentry xml:id="dateinterval.createfromdatestring" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
@@ -90,6 +90,8 @@
9090
仮の戻り値の型が、<type>DateInterval</type> になりました。
9191
これより前のバージョンでは、<type class="union"><type>DateInterval</type><type>false</type></type> でした。
9292
</entry>
93+
</row>
94+
<row>
9395
<entry>8.3.0</entry>
9496
<entry>
9597
無効な文字列が渡された場合、

‎reference/errorfunc/ini.xml‎

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<!-- $Revision$ -->
3-
<!-- EN-Revision: e5ff446c832aded712d45c885609ffdd277e6a49 Maintainer: hirokawa Status: ready -->
3+
<!-- EN-Revision: c7b445ec851969e669026cfa483b104ea2de5d95 Maintainer: hirokawa Status: ready -->
44
<!-- CREDITS: takagi,mumumu -->
55
<section xml:id="errorfunc.configuration" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
66
&reftitle.runtime;
@@ -24,6 +24,14 @@
2424
<entry><constant>INI_ALL</constant></entry>
2525
<entry></entry>
2626
</row>
27+
<row>
28+
<entry><link linkend="ini.fatal-error-backtraces">fatal_error_backtraces</link></entry>
29+
<entry>"1"</entry>
30+
<entry><constant>INI_ALL</constant></entry>
31+
<entry>
32+
PHP 8.5.0 以降で有効です。
33+
</entry>
34+
</row>
2735
<row>
2836
<entry><link linkend="ini.display-errors">display_errors</link></entry>
2937
<entry>"1"</entry>
@@ -201,6 +209,24 @@
201209
</note>
202210
</listitem>
203211
</varlistentry>
212+
213+
<varlistentry xml:id="ini.fatal-error-backtraces">
214+
<term>
215+
<parameter>fatal_error_backtraces</parameter>
216+
<type>bool</type>
217+
</term>
218+
<listitem>
219+
<simpara>
220+
致命的なエラーにバックトレースを含めるかどうかを制御します。
221+
致命的なエラーとは、<constant>E_ERROR</constant>、
222+
<constant>E_CORE_ERROR</constant>、<constant>E_COMPILE_ERROR</constant>、
223+
<constant>E_USER_ERROR</constant>、
224+
<constant>E_RECOVERABLE_ERROR</constant>、および
225+
<constant>E_PARSE</constant> のことです。
226+
</simpara>
227+
</listitem>
228+
</varlistentry>
229+
204230
<varlistentry xml:id="ini.display-errors">
205231
<term>
206232
<parameter>display_errors</parameter>

0 commit comments

Comments
 (0)