[MANUAL] English:
[zend.git] / documentation / manual / ru / module_specs / Zend_Feed-Introduction.xml
blobf255c1cb2a85926bd02cbe7adaaa06a987f8e327
1 <sect1 id="zend.feed.introduction">
2     <title>Введение</title>
3     <para>
4         <code>Zend_Feed</code> предназначен для работы с
5         лентами RSS и Atom. Он предоставляет естетственный синтаксис
6         (natural syntax) для доступа к элементам лент, атрибутам лент и
7         их сообщений, полностью поддерживает изменение структуры лент и
8         публикаций с использованием того же синтаксиса и преобразует
9         результаты изменений обратно в XML. В будущем эта
10         поддержка изменений может обеспечить добавление поддержки Atom
11         Publishing Protocol.
12     </para>
14     <para>
15         Программно <code>Zend_Feed</code> состоит из базового класса
16         <code>Zend_Feed</code>, абстрактных базовых классов
17         <code>Zend_Feed_Abstract</code>
18         и <code>Zend_Feed_Entry_Abstract</code> для представления лент и
19         их сообщений, реализаций лент и сообщений применительно для RSS и Atom,
20         а также "помощников" для обеспечения работы естетственного
21         синтаксиса.
22     </para>
24     <para>
25         В примере ниже мы демонстрируем простое получение ленты RSS и
26         сохранение нужных данных из ленты в массив PHP, который
27         может быть использован для распечатки, сохранения в БД и т.д.
28     </para>
30     <note>
31         <title>Внимание</title>
32         <para>
33             Многие ленты RSS различаются по набору доступных свойств каналов и
34             сообщений. Спецификация RSS предоставляет множество необязательных
35             свойств, поэтому имейте это в виду, когда пишете код для работы с
36             данными RSS.
37         </para>
38     </note>
40     <example id="zend.feed.introduction.example.rss">
41         <title>Использование Zend_Feed в работе с данными ленты RSS</title>
42         <programlisting language="php"><![CDATA[
43 // Извлечение последних новостей Slashdot
44 try {
45     $slashdotRss =
46         Zend_Feed::import('http://rss.slashdot.org/Slashdot/slashdot');
47 } catch (Zend_Feed_Exception $e) {
48     // неудача при импортировании ленты
49     echo "Exception caught importing feed: {$e->getMessage()}\n";
50     exit;
53 // Инициализация массива данных каналов
54 $channel = array(
55     'title'       => $slashdotRss->title(),
56     'link'        => $slashdotRss->link(),
57     'description' => $slashdotRss->description(),
58     'items'       => array()
59     );
61 // Обход каналов и сохранение данных
62 foreach ($slashdotRss as $item) {
63     $channel['items'][] = array(
64         'title'       => $item->title(),
65         'link'        => $item->link(),
66         'description' => $item->description()
67         );
69 ]]>
70         </programlisting>
71     </example>
72 </sect1>
73 <!--
74 vim:se ts=4 sw=4 et:
75 -->