Работа с отдельным сообщением ленты Atom

Изменение структуры лент и их сообщений

Естетственный синтаксис Zend_Feed используется для создания и изменения лент и записей так же, как и для их чтения. Вы можете легко преобразовывать свои новые или измененные объекты обратно в синтаксически корректный XML для сохранения в файл или отправки серверу.

Example #1 Изменение существующего сообщения в ленте

  1. span style="color: #ff0000;">'http://atom.example.com/feed/1''This is a new title''my_email@example.com'

Это выведет полное (включая вступление <?xml ... >) XML-представление новой публикации, включающее в себя необходимые пространства имен XML.

Обратите внимание на то, что вышеприведенный код будет работать даже если существующая запись не имеет тег <author>. Для присвоения вы можете использовать столько уровней доступа через ->, сколько для получения; все промежуточные уровни будут созданы автоматически, если необходимо.

Если вы хотите использовать в своих сообщениях пространство имен, отличное от atom:, rss: или osrss:, то вам нужно зарегистрировать его через Zend_Feed, используя метод Zend_Feed::registerNamespace(). Когда вы изменяете существующий элемент, он всегда будет сохранять свое исходное пространство имен. Когда вы добавляете новый элемент, то он будет включен в пространство имен по умолчанию, если не было указано явно другое пространство имен.

Example #2 Создание сообщения Atom с элементами в специальном пространстве имен

  1. span style="color: #808080; font-style: italic;">// id уже присвоен сервером
  2. $entry->title = 'my custom entry';
  3. $entry->author->name = 'Example Author''me@example.com';
  4.  
  5. // теперь выполнение специальной части
  6. 'myns', 'http://www.example.com/myns/1.0');
  7.  
  8. $entry->{'myns:myelement_one'} = 'my first custom value';
  9. $entry->{'myns:container_elt'}->part1 = 'first nested custom part';
  10. $entry->{'myns:container_elt'}->part2 = 'second nested custom part'

Работа с отдельным сообщением ленты Atom