我試圖使用SOAPClient查詢NOAA SOAP API以獲取某些特定信息。該服務的典型查詢是這樣的,根據this blog post:將「布爾值數組」傳遞給NOAA的SOAP服務
$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);
尼斯和容易。但是,看看documentation顯示最後一個參數。可以接收一組發送給服務器的布爾值,以便在響應中打開特定的內容。如果正確完成,查詢結果看起來像this。
所以當然,我試着像...
$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));
請注意,我也不得不改變參數3爲「時間序列」,爲「一目瞭然」只是什麼硬編碼返回(忽略第五參數完全)。在任何情況下,上面的代碼都會導致服務器發回空白響應。我在第六個參數中嘗試了各種其他的東西,但沒有運氣。
那麼,什麼是大想法?我如何給API一個'布爾數組'像它期望的那樣?