|
ここにある情報はかなり古くなっており、正しくなくなっている可能性があります。掲載しているサンプルコードiなどは、最新のPHPでは動作しない、もしくは、別途設定・調整が必要になるかも知れません。情報を鵜呑みにせず、あなたの手を動かして、あなたの目で確認してください。
[2004/08/12] PHP5.0.0ではphp.iniの設定を行っても「?」に化けてしまいます。とりあえず、RSS.phpの130行目あたりにある「$this->XML_Parser();」を「$this->XML_Parser('utf-8');」とすることで解決します。また、PHP5.0.1-devで修正されているようです。haltさん、情報ありがとうございました。
[2004/07/20] PHP4でマルチバイト文字が「?」に化ける場合、php.iniのmbstring.languageがJapaneseになっているか確認してみてください。
SAX関数・DOM関数を使ってRSS(RDF Site Summary)のパースをやってみましたが、RSSネタの締めくくり(?)として、PEARのXML_RSSパッケージを使用してみました。
XML_RSSパッケージ自体は、環境によっては別途インストールする必要がありますが、pearコマンドを使用して簡単にインストールすることが出来ます。
●XML_RSSパッケージのインストール# pear install xml_rss
downloading XML_RSS-0.9.2.tgz ...
...done: 3,515 bytes
install ok: XML_RSS 0.9.2
#
スクリプト自体はPEARマニュアルにもあるもので充分ですが、RSSにマルチバイト文字を含む場合、内部エンコーディングに変換してやる必要があります。しかし。。。めちゃくちゃ簡単に書けますね(^-^)
●rss.php
<?php
require_once("XML/RSS.php");
?>
<?php
$rss =& new XML_RSS("http://www.doyouphp.jp/home.rss");
$rss->parse();
echo "<h1><a href=\"http://www.doyouphp.jp/\">Do You PHP?</a>のヘッドライン</h1>\n";
echo "<ul>\n";
foreach ($rss->getItems() as $item) {
echo "<li><a href=\"" . $item['link'] . "\">" .
mb_convert_encoding($item['title'], mb_internal_encoding(), 'auto') .
"</a></li>\n";
}
echo "</ul>\n";
?>
●Do You PHP?の場合Do You PHP?のヘッドライン
・「CVSからPHPマニュアルを作成する」に追記
・PHP4のクラスとJavaのクラス - クラスメソッド・オブジェクトメソッドのいずれでコールされたかを判定する
・PHP5ネタ from PHP-users
・PHP5関連情報
・プロファイルを使った実行時間の制限
・CVSからPHPマニュアルを作成する
・PHP5関連情報
・IIS+PHP+Oracleでメモリ保護違反が発生する
・Excelファイル形式でのデータダウンロード(PEAR版)
・Excelファイル形式でのデータダウンロード
・PHP3.0.18-jp3+Oracle9iのインストール
・もう1つのPHPDoc - javadocを使ったphpdoc
・PHP5について追記
・PHP4でデザインパターン
・Oracleプロセスがdefunctする
|