2011-03-01 16 views
1

該站點在另一臺服務器上的一臺服務器和數據庫上工作。當我輸入網站上的文字以提交給非英文字母的數據庫時,它會保存並提交corect。例如,如果我輸入「ПриветВсем」,則在顯示時我會在網站上看到相同的文字。Zend_Soap客戶端和SoapServer UTF-8編碼問題

所有MySQL的排序規則表的字段是utf8_general_ci內容編碼 元在頁面上也UTF-8作爲網站上phpMyAdmin的

雖然如果我訪問DB與phpMyAdmin我看到КонÑÑ,наN, инПаР如果我將其更改爲ПриветВсем,然後在網站上我看到???????? ????

在我們的本地測試中,2臺不同的服務器上都裝有Windows,這並不是這樣工作的。但是在部署到centOS在線服務器之後,它就像這樣工作。

看起來像是將文本雙重編碼爲​​UTF-8。我找不到它在哪裏。

Zend_Soap_Client ::或SoapServer ::或MySQL編碼。

我拒絕了Mysql的想法,因爲我認爲如果它是MySQl,那麼它會保存錯誤,然後當它的extraxts應該發送錯誤的數據。

回答

0

也許你應該嘗試配置Zend_Soap_Client或SoapServer來使用utf8? Zend_Soap_Client可以這樣做:

$client = new Zend_Soap_Client("http://my.site/my.wsdl", array('encoding' => 'UTF-8'));