diff --git a/appendices/migration84/new-features.xml b/appendices/migration84/new-features.xml index 07fb2c304d2..7c3e9afccdf 100644 --- a/appendices/migration84/new-features.xml +++ b/appendices/migration84/new-features.xml @@ -536,8 +536,8 @@ $object = $reflector->newLazyGhost($initializer); SOAP - クラスマップでの名前空間のクラーク式記法のサポートが追加されました。 - クラスマップ内でクラーク式記法を使用して、 + クラスマップでの名前空間の Clark 記法のサポートが追加されました。 + クラスマップ内で Clark 記法を使用して、 特定の名前空間の型を特定のクラスに解決するエントリを指定できるようになりました。 例: '{http://example.com}foo' => 'FooClass' diff --git a/reference/soap/soapclient.xml b/reference/soap/soapclient.xml index 887dfe7498f..14bb621c2ae 100644 --- a/reference/soap/soapclient.xml +++ b/reference/soap/soapclient.xml @@ -1,6 +1,6 @@ - + <classname>SoapClient</classname> クラス @@ -73,7 +73,7 @@ private - resourcenull + arraynull typemap null @@ -488,8 +488,14 @@ typemap - - + + XML から PHP への独自の型変換に使う型マッピングの配列です。 + 型マッピングが設定されていない場合は &null; です。 + PHP 8.4.0 以降、このプロパティは array 型です。 + これより前のバージョンでは resource 型でした。 + このプロパティを is_resource でチェックしているコードは、 + それに合わせて修正する必要があります。 + diff --git a/reference/soap/soapclient/construct.xml b/reference/soap/soapclient/construct.xml index c273375c00c..df41713728a 100644 --- a/reference/soap/soapclient/construct.xml +++ b/reference/soap/soapclient/construct.xml @@ -1,6 +1,6 @@ - + @@ -405,6 +405,12 @@ __get() が コールされる点にも注意して下さい。 + + PHP 8.4.0 以降では、特定の XML 名前空間の型をマッピングするために、 + {namespace}type 形式の Clark 記法でキーを指定することもできます。 + たとえば '{http://example.com}foo' のように指定します。 + 同じ型名が複数の名前空間で定義されている場合に役立ちます。 + diff --git a/reference/soap/soapserver/construct.xml b/reference/soap/soapserver/construct.xml index 48ca4b0c2ea..f072336dc7a 100644 --- a/reference/soap/soapserver/construct.xml +++ b/reference/soap/soapserver/construct.xml @@ -1,6 +1,6 @@ - + @@ -44,12 +44,15 @@ 内部の文字エンコーディング (encoding), アクターの URI (actor) を指定することができます。 - + classmap オプションにより、WSDL 型を PHP のクラスにマッピングすることが可能です。 このオプションには、キーとしてWSDL 型、値として PHP クラスの名前を持つ配列を指定する必要があります。 - + PHP 8.4.0 以降では、特定の XML 名前空間の型をマッピングするために、 + {namespace}type 形式の Clark 記法でキーを指定することもできます。 + たとえば '{http://example.com}foo' のように指定します。 + typemap オプションは、型マッピングの配列です。 この配列のキーは type_name、 diff --git a/reference/soap/soapserver/setpersistence.xml b/reference/soap/soapserver/setpersistence.xml index 68106797aa6..305476d26ac 100644 --- a/reference/soap/soapserver/setpersistence.xml +++ b/reference/soap/soapserver/setpersistence.xml @@ -1,6 +1,6 @@ - + @@ -26,7 +26,7 @@ 持続モード SOAP_PERSISTENCE_SESSION は、そのクラスのオブジェクトについてのみ持続させます。 - クラスのスタティックなデータについては対象となりません。 + クラスの static なデータについては対象となりません。 self::$bar ではなく $this->bar を使用しましょう。 @@ -75,7 +75,35 @@ &return.void; - + + + &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.4.0 + + session 拡張モジュールが共有モジュールとしてビルドされている場合も + SOAP_PERSISTENCE_SESSION が動作するようになりました。 + これより前のバージョンでは、この場合は黙って失敗していました。 + 一方、session 拡張モジュールが利用できない状態で + SOAP_PERSISTENCE_SESSION を指定すると、 + SoapServer::setPersistence が + Error をスローするようになりました。 + + + + + + + &reftitle.examples; diff --git a/reference/soap/soapvar/construct.xml b/reference/soap/soapvar/construct.xml index 393394bdc20..9b43194e61f 100644 --- a/reference/soap/soapvar/construct.xml +++ b/reference/soap/soapvar/construct.xml @@ -1,6 +1,6 @@ - + @@ -92,6 +92,14 @@ + + 8.4.0 + + xsd:dateTime など、日付や時刻を表す型の要素の値に + DateTimeInterface のインスタンスを使うと、 + 空文字列ではなく ISO 8601 形式でシリアライズされるようになりました。 + + 8.0.3