2013-07-11 60 views
5

可以將$options傳遞給SoapClient的構造函數。但是我沒有找到在對象創建之後 - 在生命週期中改變這個選項的方法。更改SoapClient選項

問題:

  • 是否有可能改變的SoapClient的選項"stream_context"
  • 是否可以更改SoapClient的任何選項?

...對象創建後?

代碼:

__construct($wsdl, $options); 
        // i want to change these options after object is created 


class MySoapClient extends SoapClient { 
    public function setOption($key, $value) { 
     // how ? 
    } 
} 

$sc = new MySoapClient($wsdl, $options); 
$sc->setOption('steam_context', $my_stream_context); 

對我來說,我需要改變的HTTP標頭爲每個請求。我不想爲每個請求創建新的SoapClient對象。

+0

@ hek2mgl不,您閱讀手冊。這樣的功能(如果可用)沒有記錄 – wahoo

+0

是的,我現在看到問題+1;) – hek2mgl

+0

您可能患有[XY問題](http://meta.stackexchange.com/questions/66377/what-is-the -xy-problem)這裏。沒有一個理智的SOAP服務會迫使你自己設置HTTP頭。描述你原來的問題,而不是你認爲合適的解決方案的問題。 – Sven

回答

0

是的,如果您只需要更改標題 - 請檢查this out。 它應該完全按照您的要求進行,正如您所看到的,它被記錄下來。