diff --git a/reference/filesystem/functions/fgetcsv.xml b/reference/filesystem/functions/fgetcsv.xml index 18a7bc4da5..ebc7f52656 100644 --- a/reference/filesystem/functions/fgetcsv.xml +++ b/reference/filesystem/functions/fgetcsv.xml @@ -1,6 +1,6 @@ - + @@ -25,11 +25,12 @@ 読み込んだフィールドを含む配列を返すという違いがあります。 - - この関数はロケール設定を考慮します。もし LC_CTYPE - が例えば en_US.UTF-8 の場合、 - 1 バイトエンコーディングのファイルは間違って読み込まれるかもしれません。 - + + この関数はロケール設定を考慮します。 + 例えば、LC_CTYPEen_US.UTF-8 の場合、 + 1 バイトエンコーディングでエンコードされたデータが + 間違って処理されるかもしれません。 + @@ -69,7 +70,8 @@ separator - オプションの separator パラメータで、フィールドのデリミタ (シングルバイト文字 1 文字のみ) を設定します。 + separator パラメータで、フィールドのデリミタを設定します。 + シングルバイト文字 1 文字のみでなければなりません。 @@ -77,7 +79,8 @@ enclosure - オプションの enclosure パラメータで、フィールド囲いこみ文字 (シングルバイト文字 1 文字のみ) を設定します。 + オプションの enclosure パラメータで、フィールド囲いこみ文字を設定します。 + シングルバイト文字 1 文字のみでなければなりません。 @@ -85,7 +88,8 @@ escape - オプションの escape パラメータで、エスケープ文字 (シングルバイト文字 最大で1文字) を設定します。 + オプションの escape パラメータで、エスケープ文字を設定します。 + シングルバイト文字 1 文字のみ、または空文字列でなければなりません。 空文字列("") を指定すると、(RFC 4180 に準拠していない) 独自仕様のエスケープ機構が無効になります。 @@ -100,6 +104,14 @@ 特別な意味はありません。それ自身をエスケープする意味ですらありません。 + + + PHP 8.4.0 以降では、escape + のデフォルト値に依存することは非推奨となりました。 + 位置指定の引数か、名前付き引数 + を使用して明示的に指定する必要があります。 + + @@ -123,6 +135,18 @@ ¬e.line-endings; + + &reftitle.errors; + + separator または enclosure が + 1 バイト長ではない場合、ValueError をスローします。 + + + escape が 1 バイト長、または空文字列ではない場合、 + ValueError をスローします。 + + + &reftitle.changelog; @@ -135,6 +159,21 @@ + + 8.4.0 + + escape のデフォルト値に依存することは、 + 非推奨になりました。 + + + + 8.3.0 + + 最後のフィールドが、 + 閉じられていないフィールド囲いこみ文字だけの場合、 + null バイト 1 つの文字列ではなく、空文字列を返すようになりました。 + + 8.0.0 @@ -184,15 +223,17 @@ if (($handle = fopen("test.csv", "r")) !== FALSE) { &reftitle.seealso; - - - str_getcsv - explode - file - pack - fputcsv - - + + fputcsv + str_getcsv + SplFileObject::fgetcsv + SplFileObject::fputcsv + SplFileObject::setCsvControl + SplFileObject::getCsvControl + explode + file + pack + diff --git a/reference/filesystem/functions/fputcsv.xml b/reference/filesystem/functions/fputcsv.xml index 3fa35eb710..1f47c02be8 100644 --- a/reference/filesystem/functions/fputcsv.xml +++ b/reference/filesystem/functions/fputcsv.xml @@ -1,8 +1,8 @@ - + - + fputcsv 行を CSV 形式にフォーマットし、ファイルポインタに書き込む @@ -21,9 +21,9 @@ fputcsv は、行(fields - 配列として渡されたもの)を CSV としてフォーマットし、それを - stream で指定したファイルに書き込みます - (いちばん最後に改行を追加します)。 + 配列として渡されたもの)を CSV としてフォーマットし、それを、 + 指定した stream に書き込みます + (いちばん最後に eol を追加します)。 @@ -45,34 +45,15 @@ - - separator - - - オプションの separator はフィールド区切り文字 - (シングルバイト文字 一文字だけ) を指定します。 - - - - - enclosure - - - オプションの enclosure はフィールドを囲む文字 - (シングルバイト文字 一文字だけ) を指定します。 - - - - - escape - - - オプションの escape は、エスケープ文字 - (シングルバイト文字 最大で一文字) を指定します。 - 空文字("") を指定すると、(RFC 4180 に準拠していない) 独自仕様のエスケープ機構が無効になります。 - - - + + + + + + + + + eol @@ -100,6 +81,10 @@ + + + + &reftitle.changelog; @@ -112,6 +97,9 @@ + + + 8.1.0 @@ -141,16 +129,16 @@ - - &reftitle.notes; - ¬e.line-endings; - - &reftitle.seealso; - - - fgetcsv - - + + fgetcsv + str_getcsv + SplFileObject::fgetcsv + SplFileObject::fputcsv + SplFileObject::setCsvControl + SplFileObject::getCsvControl + diff --git a/reference/spl/splfileobject/fgetcsv.xml b/reference/spl/splfileobject/fgetcsv.xml index 18a61f5dc3..da16b8c73a 100644 --- a/reference/spl/splfileobject/fgetcsv.xml +++ b/reference/spl/splfileobject/fgetcsv.xml @@ -1,8 +1,8 @@ - + - + SplFileObject::fgetcsv ファイルから行を取り出し CSV フィールドとして処理する @@ -19,14 +19,9 @@ CSV フォーマットのファイルから行を取り出し読み込まれたフィールドを含む配列を返します。 - - - この関数は、ロケール設定を考慮します。 - LC_CTYPE がたとえば - en_US.UTF-8 だった場合、 - ファイルの1バイトのエンコーディングは、この関数では間違った読まれ方をする可能性があります。 - - + + + @@ -38,8 +33,8 @@ フィールドの区切り文字 (シングルバイト文字 1 文字のみ)。 - デフォルトはカンマもしくは - SplFileObject::setCsvControl を使ってセットされた値です。 + デフォルトはカンマ(,)、 もしくは事前に + SplFileObject::setCsvControl を呼び出してセットされた値です。 @@ -48,8 +43,8 @@ フィールド囲み文字 (シングルバイト文字 1 文字のみ)。 - デフォルトはダブルクォートもしくは - SplFileObject::setCsvControl を使ってセットされた値です。 + デフォルトはダブルクォート(")、もしくは事前に + SplFileObject::setCsvControl を呼び出してセットされた値です。 @@ -58,8 +53,8 @@ エスケープ文字 (シングルバイト文字 最大で1文字)。 - デフォルトはバックスラッシュ (\) もしくは - SplFileObject::setCsvControl を使ってセットされた値です。 + デフォルトはバックスラッシュ(\)、 もしくは事前に + SplFileObject::setCsvControl を呼び出してセットされた値です。 空文字列("")の場合、(RFC 4180 に準拠していない) 独自仕様のエスケープ機構が無効になります。 @@ -74,6 +69,15 @@ 特別な意味はありません。それ自身をエスケープする意味ですらありません。 + + + PHP 8.4.0 以降では、escape + のデフォルト値に依存することは非推奨となりました。 + 位置指定の引数か、名前付き引数を使用するか、 + あるいは SplFileObject::setCsvControl + を呼び出して、明示的に指定する必要があります。 + + @@ -93,6 +97,10 @@ + + + + &reftitle.changelog; @@ -105,6 +113,9 @@ + + + 7.4.0 @@ -176,14 +187,17 @@ A salmon is a fish with 0 legs &reftitle.seealso; - - - SplFileObject::setCsvControl - SplFileObject::setFlags - SplFileObject::READ_CSV - SplFileObject::current - - + + SplFileObject::fputcsv + SplFileObject::setCsvControl + SplFileObject::getCsvControl + SplFileObject::setFlags + SplFileObject::READ_CSV + SplFileObject::current + fputcsv + fgetcsv + str_getcsv + diff --git a/reference/spl/splfileobject/fputcsv.xml b/reference/spl/splfileobject/fputcsv.xml index bb8af02774..10451a6fbf 100644 --- a/reference/spl/splfileobject/fputcsv.xml +++ b/reference/spl/splfileobject/fputcsv.xml @@ -1,8 +1,8 @@ - + - + SplFileObject::fputcsv フィールドの配列を CSV の行として書き出す @@ -19,7 +19,8 @@ stringeol"\n" - fields の配列を、CSV の行としてファイルに書き出します。 + fields の配列を、CSV + の行としてファイルに書き出します。 @@ -34,34 +35,15 @@ - - separator - - - オプションで指定する、フィールドの区切り文字 - (シングルバイト文字 一文字のみ)。 - - - - - enclosure - - - オプションで指定する。フィールドの囲み文字 - (シングルバイト文字 一文字のみ)。 - - - - - escape - - - オプションの escape は、エスケープ文字 - (シングルバイト文字 最大で一文字) を指定します。 - 空文字列 ("") を与えると、(RFC 4180 に準拠していない) 独自仕様のエスケープ機構を無効にします。 - - - + + + + + + + + + eol @@ -87,19 +69,11 @@ 書き出した文字列の長さを返します。&return.falseforfailure;。 - - separatorenclosure - が一文字でない場合は &false; を返し、何もファイルに書き出しません。 - - - &reftitle.errors; - - separatorenclosure - が一文字でない場合は E_WARNING レベルのエラーが発生します。 - - + + + &reftitle.changelog; @@ -113,6 +87,9 @@ + + + 8.1.0 @@ -171,12 +148,14 @@ aaa,bbb,ccc,dddd &reftitle.seealso; - - - fputcsv - SplFileObject::fgetcsv - - + + SplFileObject::fgetcsv + SplFileObject::setCsvControl + SplFileObject::getCsvControl + fputcsv + fgetcsv + str_getcsv + diff --git a/reference/spl/splfileobject/getcsvcontrol.xml b/reference/spl/splfileobject/getcsvcontrol.xml index 1e8513ab83..11aac6bf84 100644 --- a/reference/spl/splfileobject/getcsvcontrol.xml +++ b/reference/spl/splfileobject/getcsvcontrol.xml @@ -1,6 +1,6 @@ - + @@ -15,7 +15,8 @@ - CSV フィールドを処理するのに使われる区切りと囲み文字とエスケープ文字を取得します。 + CSV フィールドを処理するのに使われる + 区切りと囲み文字とエスケープ文字を取得します。 @@ -91,14 +92,15 @@ Array &reftitle.seealso; - - - SplFileObject::setCsvControl - SplFileObject::fgetcsv - - + + SplFileObject::setCsvControl + SplFileObject::fgetcsv + SplFileObject::fputcsv + fputcsv + fgetcsv + str_getcsv + - - + - + SplFileObject::setCsvControl CSV の区切り文字、囲み文字、エスケープ文字をセットする @@ -17,41 +17,24 @@ stringescape"\\" - CSV フィールド処理用の区切り文字と囲み文字とエスケープ文字をセットします。 + CSV フィールド処理用の + 区切り文字と囲み文字とエスケープ文字をセットします。 &reftitle.parameters; - - - - separator - - - フィールドの区切り文字 (シングルバイト文字 1 文字のみ)。 - - - - - enclosure - - - フィールドの囲み文字 (シングルバイト文字 1 文字のみ)。 - - - - - escape - - - フィールドのエスケープ文字 (シングルバイト文字 最大で1文字)。 - 空文字列("")を指定すると、(RFC 4180 に準拠していない) 独自仕様のエスケープ機構が無効になります。 - - - - - + + + + + + + + + + + &warning.csv.escape-parameter; @@ -62,6 +45,10 @@ + + + + &reftitle.changelog; @@ -74,6 +61,9 @@ + + + 7.4.0 @@ -121,12 +111,14 @@ cherries|87 &reftitle.seealso; - - - SplFileObject::getCsvControl - SplFileObject::fgetcsv - - + + SplFileObject::getCsvControl + SplFileObject::fgetcsv + SplFileObject::fputcsv + fputcsv + fgetcsv + str_getcsv + diff --git a/reference/strings/functions/str-getcsv.xml b/reference/strings/functions/str-getcsv.xml index b828a179b2..95867a5d04 100755 --- a/reference/strings/functions/str-getcsv.xml +++ b/reference/strings/functions/str-getcsv.xml @@ -1,8 +1,8 @@ - + - + str_getcsv @@ -23,13 +23,9 @@ CSV 形式の文字列入力のフィールドをパースして、 読み込んだフィールドの内容を配列で返します。 - - - この関数はロケール設定を考慮します。もし LC_CTYPE - が例えば en_US.UTF-8 の場合、 - 1 バイトエンコーディングの文字列は間違って読み込まれるかもしれません。 - - + + + @@ -44,46 +40,15 @@ - - separator - - - フィールド区切り文字 (シングルバイト文字 1 文字のみ)。 - - - - - enclosure - - - フィールド囲み文字 (シングルバイト文字 1 文字のみ)。 - - - - - escape - - - エスケープ文字 (シングルバイト文字 最大1文字)。デフォルトはバックスラッシュ - (\)。 - 空文字列 ("") を指定すると、 - (RFC 4180 に準拠していない) 独自仕様のエスケープ機構を無効にします。 - - - - 通常、 enclosure の文字は、 - フィールドの中では二回出力されることでエスケープされます。 - しかし、escape - の文字を代わりに使うこともできます。 - よって、デフォルト値 "" - および \" は同じ意味になります。 - enclosure 文字をエスケープすることを許可する以外に、 - escape 文字は特別な意味を何ら持ちません; - つまり、自分自身をエスケープすることすら意味しません。 - - - - + + + + + + + + + &warning.csv.escape-parameter; @@ -96,6 +61,10 @@ + + + + &reftitle.changelog; @@ -108,6 +77,22 @@ + + + + + 8.4.0 + + separatorenclosure、 + または escape が不正な場合、 + ValueError をスローするようになりました。 + これは、fgetcsvfputcsv + の動作に倣ったものとなります。 + + + + + 7.4.0 @@ -192,11 +177,14 @@ array(1) { &reftitle.seealso; - - - fgetcsv - - + + fputcsv + fgetcsv + SplFileObject::fgetcsv + SplFileObject::fputcsv + SplFileObject::setCsvControl + SplFileObject::getCsvControl +