SOAPClientを使用してNOAASOAPAPIに特定の情報を照会しようとしています。このブログ投稿によると、サービスへの一般的なクエリは次のようになります。
$client = new SoapClient('http://www.weather.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl#NDFDgen');
$result = $client->NDFDgen(40.7893,-96.6938,'glance','2007-04-20T00:00','2007-04-21T00:00',NULL);
素晴らしくて簡単。ただし、ドキュメントを見ると、最後のパラメータがわかります。サーバーに送信されるブール値の配列を取得して、応答で特定のものをオンにすることができます。正しく実行されると、クエリは次のようになります。
だからもちろん、私は次のようなことを試みます...
$client = new SoapClient('http://www.weather.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl#NDFDgen');
$result = $client->NDFDgen(40.7893,-96.6938,'time-series','2007-04-20T00:00','2007-04-21T00:00', array('mint' => 1, 'maxt' => 1));
'glance'は単に返されるものをハードコードするため(5番目のパラメーターを完全に無視するため)、パラメーター3を'時系列'に変更する必要があることに注意してください。いずれの場合も、上記のコードにより、サーバーは空白の応答を返します。私はその6番目のパラメーターで他のさまざまなことを試しましたが、運がありませんでした。
それで、大きなアイデアは何ですか?APIに期待どおりの「ブール値の配列」を与えるにはどうすればよいですか?