Programmer's Reference Guide
| Изменение структуры лент и публикаций Modifying Feed and Entry structures |
Специальные классы лент и записей
Наконец, вы можете наследовать классы Zend_Feed, если хотите обеспечить
собственный формат или такие детали, как автоматическое управление элементами,
которые должны находиться в специальном пространстве имен.
Здесь приведен пример специального класса публикации Atom, который управляет
публикациями в собственным пространстве имен myns:. Обратите
внимание, что он автоматически делает вызов registerNamespace(),
так что конечным пользователям не нужно беспокоиться о пространствах имен.
Пример #1 Расширение класса публикации Atom с добавлением специальных пространств имен
<?php
/**
* Специальный класс публикации знает URI ленты и может автоматически
* добавлять дополнительные пространства имен
*/
class MyEntry extends Zend_Feed_Entry_Atom
{
public function __construct($uri = 'http://www.example.com/myfeed/',
$xml = null)
{
parent::__construct($uri, $xml);
Zend_Feed::registerNamespace('myns', 'http://www.example.com/myns/1.0');
}
public function __get($var)
{
switch ($var) {
case 'myUpdated':
// преобразование myUpdated в myns:updated.
return parent::__get('myns:updated');
default:
return parent::__get($var);
}
}
public function __set($var, $value)
{
switch ($var) {
case 'myUpdated':
// преобразование myUpdated в myns:updated.
parent::__set('myns:updated', $value);
break;
default:
parent::__set($var, $value);
}
}
}
?>
Далее для использования этого класса просто создаете его экземпляр и устанавливаете
свойство myUpdated:
<?php $entry = new MyEntry(); $entry->myUpdated = '2005-04-19T15:30'; ?>
| Изменение структуры лент и публикаций Modifying Feed and Entry structures |
Select a Version
Languages Available
Components
Search the Manual
Navigation
- Руководство разработчика
- Руководство разработчика
- Zend_Feed
- Введение
- Импортирование лент с помощью Zend_Feed Importing Feeds with Zend_Feed
- Получение лент из веб-страниц Retrieving Feeds from Web Pages
- Работа с лентой RSS Consuming an RSS Feed
- Работа с лентой Atom Consuming an Atom Feed
- Работа с отдельной публикацией Atom Consuming a Single Atom Entry
- Изменение структуры лент и публикаций Modifying Feed and Entry structures
- Специальные классы лент и записей Custom Feed and Entry Classes
