2011-08-24 7 views
0

SOAP 서버 (주 서버)에 연결하고 SOAP 서버 자체를 프로그래밍하는 "SOAP 프록시"를 프로그래밍하고 있습니다. 나는이 SOAP 프록시와 접촉 할 하나의 클라이언트도 프로그래밍하고있다.PHP Zend UTF8 오류 SOAP

SOAP-ERROR: Encoding: string 'Pir\xe4...' is not a valid utf-8 string 

내가 주 서버가 구현되는 어떤 언어에 모르는 다음 SOAP 클라이언트가 SOAP 프록시에서 특정 metodh를 호출 할 때

나는이 오류가 발생합니다. 나는 프록시 서버와 클라이언트에서 PHP로 작업하고있다. 정보는 주 서버에서 제공되며 복잡한 개체입니다.

문제의 해결 방법을 찾았습니다. 내가이 할 퀸트 닌자 기능이라고 생각

$result = json_decode(utf8_encode(json_encode($result))); 

그러나이 라인 전에 프록시 서버 eveithyng의 내용을 반환 추가하는 것은 괜찮습니다. 더 좋은 방법이 있습니까? 누구든지 이런 종류의 문제를 과거에 발견 했습니까? 아니면 내 이데올로기에서 빠진 것이 있습니까?

답변

0

반품을 인코딩해도 괜찮습니까? 하지만 젠드 프레임 워크를 사용하여 코드를 인코딩하는 것이 더 섹시합니다.

// could be set in bootstrap 
Zend_Json::$useBuiltinEncoderDecoder = true; 

// should be correct utf8 
$result = Zend_Json::encode($result);