| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- Reviewed: no -->
- <!-- EN-Revision: 24249 -->
- <sect1 id="zend.feed.introduction">
- <title>導入</title>
- <para>
- <classname>Zend_Feed</classname> は、<acronym>RSS</acronym> や Atom のフィードを扱う機能を提供します。
- フィードの要素や属性、そしてエントリの属性に、自然な方法でアクセスできるようになります。
- また、<classname>Zend_Feed</classname> でフィードやエントリの構造を変更し、
- その結果を <acronym>XML</acronym> に書き戻すという拡張機能もあります。将来的には Atom Publishig Protocol
- (AtomPP) にも対応させる予定です。
- </para>
- <para>
- <classname>Zend_Feed</classname> の構成は、基底クラス <classname>Zend_Feed</classname>、
- フィードやエントリを扱うための基底抽象クラス <classname>Zend_Feed_Abstract</classname>
- および <classname>Zend_Feed_Entry_Abstract</classname>、<acronym>RSS</acronym> や Atom
- 用のフィードクラスとエントリクラスの実装、
- そして自然な方法でそれらを操作するためのヘルパーから成り立っています。
- </para>
- <para>
- 以下では、<acronym>RSS</acronym> フィードの取得、
- フィードデータの <acronym>PHP</acronym> 配列への変換、データの表示、
- データベースへの保存などの簡単な使用例を示します。
- </para>
- <note>
- <title>注意</title>
- <para>
- <acronym>RSS</acronym> フィードによって、使用できるチャネルやアイテムのプロパティが違います。
- <acronym>RSS</acronym> の仕様ではオプションのプロパティが多く定義されているので、
- <acronym>RSS</acronym> データを扱うコードを書く際にはこのことに注意しましょう。
- </para>
- </note>
- <example id="zend.feed.introduction.example.rss">
- <title>Zend_Feed による RSS フィードデータの使用</title>
- <programlisting language="php"><![CDATA[
- // 最新の Slashdot ヘッドラインを取得します
- try {
- $slashdotRss =
- Zend_Feed::import('http://rss.slashdot.org/Slashdot/slashdot');
- } catch (Zend_Feed_Exception $e) {
- // フィードの読み込みに失敗しました
- echo "フィードの読み込み中に例外が発生: {$e->getMessage()}\n";
- exit;
- }
- // チャネルデータの配列を初期化します
- $channel = array(
- 'title' => $slashdotRss->title(),
- 'link' => $slashdotRss->link(),
- 'description' => $slashdotRss->description(),
- 'items' => array()
- );
- // チャネルの各項目をループし、関連するデータを保存します
- foreach ($slashdotRss as $item) {
- $channel['items'][] = array(
- 'title' => $item->title(),
- 'link' => $item->link(),
- 'description' => $item->description()
- );
- }
- ]]></programlisting>
- </example>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|