Authentication




Cancel OK
B!コメントする  2013-01-05 11:27:00 by old

あけましておめでとうございます

明けましておめでとうございます。

このブログを始めてから今年で2年になります。
たいしたことは書いてないですが今年も宜しくお願いいたします。

新年早々ですが知識不足からエラーが発生したので恥ずかしながら書いておきます。

iGoogleの代替物を作ってますが、よく考えたらこのサイトにはRSSが無いな~と。
そこでRSSを作成したのですがサンプルとしてベタに書いたものはちゃんと読み取りが出来るけどPHPで生成したものが読み取りエラーとなる・・・正確にはパースエラーですが。

ベタで書いたものは
rss.rdfとしてhtaccessに「AddType application/xml .rdf」と追記することで正常にパースが出来る。
PHPで生成したものは一応headerに「Content-type: application/xml; charset=utf-8」を付加して出力するとパースが出来ずにエラーとなる。

原因としては最初に余計な改行が入っていたのが原因でした。

正常にパースできる場合は

1行目 <?xml version="1.0" encoding="UTF-8"?>


パースエラーになる場合

1行目
2行目 <?xml version="1.0" encoding="UTF-8"?>


となっておりました。
使用した関数は「simplexmlloadstring」だったんですが仕様に沿ってないとすぐにエラーとなってしまうのでパース関数を自作したほうがいいんじゃないかと思っているくらいです。

ちなみにRSSを配信しているところでも、意外と仕様に沿ってないところがあったりします。
また配信内容によって仕様が崩れている場合もあるのでエラー対処が意外と面倒だな~というのが実感としてあります。

基本的な機能はだいだい出来上がっているので近いうちに公開出来ると思います。


ブログ  

  • コメント
  • コメントはまだありません