2008年4月10日

[PHP-users 33461] Re:Pear::SOAP とスクリプトの文字コード

matsufujiです。

PHPのVersion違うのですが、私もそのURLを見てSoapを使ったので参考になれば。

SoapClient()の第二引数で文字コードを指定することが出来たと思います。

$wsdl = 'hoge';
$option = array('encoding' => 'SJIS');

$client = new SoapClient($wsdl,$option);

こうするとSoap通信の結果がShift_JISで返ってきます。

私は
PHP 5.2.5
クライアント SJIS
サーバ UTF-8
の状態で文字化けせずに動作しました。

EUCも大丈夫なんじゃないかなと思います。
テストできる環境が手元にないので憶測ですけど。。


--
Ryo Matsufuji <jklryo@xxxxx>
http://jkl.lomo.jp/


2008/4/10 <icc10325@xxxxx>:
> お世話になります。
>
> Pear::SOAPを利用したプログラムを調査しているのですが、文字コードの件でイロイロ
> 試したのですがうまくいかず、頭が混乱してきましたのでご助言をお願いいたします。
>
>
> 下記のサイトを参考にSOAPサーバー・クライアントのプログラムを用意しました
> http://www.doyouphp.jp/php5/php5_soap_extension_server.shtml
>
> 今回はどうしてもPHPソースをEUC-JPで記述しないといけません。
> しかし上記URL記載のようにPear::SOAPの出力がUTF-8を期待しています。
> (参考サイトでは「面倒なので」ソース自身をUTF-8で記述しているようです)
>
> 実際、UTFで記述すると正常に動作する参考スクリプトが、EUCで記述すると文字化け(
> 受け取った文字のみ)したり、戻り値のXMLを認識してくれなかったりしているようで
> す。
>
>
> 最終的にお伺いしたい内容は
> ・上記の参考サイト同様の内容を、EUC-JPでソースを記述して正常に動作させるために
> はどのような文字コード関連の設定を行えばよろしいでしょうか?
> 多分、mb_http_outputはUTF-8でないといけない・・・と思われますので、
> ・PHPソースはEUC
> ・HTTP出力はUTF-8
> が目標なんだろうな・・・と思います
>
> ちなみに、
> ・php.iniは変更できません
> ・mbstring.internal_encodingなどの設定は「.htaccess」または「該当のPHPソースの
> 中で設定」で対応。
> ・PHPバージョンは5.1.6、Pear::SOAPは0.11です
>
> が条件?となります。
>
> 以上、よろしくお願いいたします。
>
>
> _______________________________________________
> PHP-users mailing list PHP-users@xxxxx
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3
>
_______________________________________________
PHP-users mailing list PHP-users@xxxxx
http://ml.php.gr.jp/mailman/listinfo/php-users
PHP初心者のためのページ - 質問する前にはこちらをお読みください
http://oldwww.php.gr.jp/php/novice.php3

投稿者 xml-rpc : 2008年4月10日 22:29
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/71985
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。