Akamai API に問題があります。
このシステム ( http://www.wsdltophp.com/ ) を使用して、WSDL を PHP のオブジェクトに変換しました。手でやるのが面倒だったのでやってみました。しかし、問題はまだ残っています:
WSDL サービスが持つ 1 つのメソッドは deleteStreamEvent で、streamId と eventName の 2 つのパラメーターを受け取ります。したがって、呼び出しは次のとおりです。
$soapClient->deleteStreamEvent(array ('streamId' => $id, 'eventName' => 'name'));
しかし問題は、この XML をサーバーに送信することです。
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="https://control.akamai.com/ArchiveManagementService.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
<env:Body>
<ns1:deleteStreamEvent env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
<streamId xsi:type="xsd:int">1</streamId>
<eventName xsi:nil="true"/>
</ns1:deleteStreamEvent>
</env:Body>
</env:Envelope>
ご覧のとおり、送信したすべての番号を「1」に変更します。なぜこうなった?こんな変な動き初めて見た…
lighttpd サーバーで PHP 5.3 を使用しています。