RSS情報取得スクリプト修正
一部のブログではチャネル情報の日付にブログの作成日が入っている。ブログサービス会社にツッコミいれようと思ったが、調べてみるとここは必ずしも最新の更新日付を入れなくてもいいようだ。ということで、修正。
<?php if($feed_text = file_get_contents($check_url)){ $date_xml = NULL; $offset = strpos($feed_text,'<item'); if($offset === FALSE) $offset = strpos($feed_text,'<entry>'); if($offset === FALSE){ $stat = "ERROR";break; } if(preg_match('/<updated>([^<]+)<\/updated>/',$feed_text,$temp,NULL,$offset)) $date_xml = $temp[1]; if(preg_match('/<dc:date>([^<]+)<\/dc:date>/',$feed_text,$temp,NULL,$offset)) $date_xml = $temp[1]; if(preg_match('/<pubDate>([^<]+)<\/pubDate>/',$feed_text,$temp,NULL,$offset)) $date_xml = $temp[1]; if(preg_match('/<published>([^<]+)<\/published>/',$feed_text,$temp,NULL,$offset)) $date_xml = $temp[1]; if(preg_match('/<date>([^<]+)<\/date>/',$feed_text,$temp,NULL,$offset)) $date_xml = $temp[1]; if($date_xml == NULL){ $stat = "ERROR";break; } } ?>
オプションに何もしていないときにはNULLと書いておけばよさそう。