[PHP-users 23320]Re: SAX処理で不具合

Hitoshi Kawano kawano @ topics.or.jp
2004年 9月 16日 (木) 17:47:28 JST


みなさんありがとうございます。河野です。

> ここは、「$tmp .= $data;」と連結した方が良いですね。
> チャンク毎にcdatahandlerが呼び出されるので
> 必ずしもデータの終端とイコールではありません。
> endElementHandlerが呼ばれるまでに、データによっては
> 複数回に分けて呼び出される場合があります。
> ($tmpのクリアはそのコードだとendElementHandlerの中でかな)
まさに、この不具合だと思います。
確かに、cdatahandlerがendElementHandlerが呼ばれるまでに
複数回に分けて呼ばれているような気がします。
複数回呼ばれるっていうのはどうしてなのでしょうか?
また、回避する方法があれば教えていただければ。。。

それと書き損なっているのですが、cdatahandlerのなかで
このようなことをやってます。これならEUCでもだめでしょうか?
$data = mb_convert_encoding($text,"EUC-JP","auto");


PHP-users メーリングリストの案内