XMLパースエラー

半年ほど前に仕事で課金APIもどきを開発したのだけど、アクセスしてくる他社サーバから来る問い合わせで多いのまとめ。
こちらがPOSTした結果をXMLで返してもらっているので問い合わせの大半がXMLパースエラー。
時間空いて忘れちゃってたので備忘。


[Fatal Error] :4:87: The reference to entity "muid" must end with the ';' delimiter.
これ一番多い。
単純にレスポンスに&が混じってるだけ。
エスケープしてくださいって言う。
×http://hoge/hoge.php?id=xxx&muid=xxx
http://hoge/hoge.php?id=xxx & a m p ; muid=xxx


[Fatal Error] :1:1: Premature end of file.
次これ。
"Premature"って何だよってググったら「時期尚早」とか出てきた。
要はXMLが不完全らしい。
×Content-Type: application/x-www-form-urlencoded
○Content-Type: text/xml
あとStreamを閉じちゃったあとにパースしよーとしたとかね。