mekras/atom

Atom Protocol support library

v1.0.0 2016-08-17 14:20 UTC

This package is auto-updated.

Last update: 2024-10-29 04:53:04 UTC


README

Latest Stable Version License Build Status Coverage Status

Purpose

This library is designed to work with the Atom documents in an object-oriented style. It does not contain the functionality to download or display documents.

Documentation

Example

use Mekras\Atom\Document\FeedDocument;
use Mekras\Atom\DocumentFactory;
use Mekras\Atom\Exception\AtomException;

$xml = file_get_contents('http://example.com/atom');

$factory = new DocumentFactory();

try {
    $document = $factory->parseXML($xml);
} catch (AtomException $e) {
    die($e->getMessage());
}

if ($document instanceof FeedDocument) {
    $feed = $document->getFeed();
    echo 'Feed: ', $feed->getTitle(), PHP_EOL;
    echo 'Updated: ', $feed->getUpdated()->format('d.m.Y H:i:s'), PHP_EOL;
    foreach ($feed->getAuthors() as $author) {
        echo 'Author: ', $author->getName(), PHP_EOL;
    }
    foreach ($feed->getEntries() as $entry) {
        echo PHP_EOL;
        echo '  Entry: ', $entry->getTitle(), PHP_EOL;
        if ($entry->getSelfLink()) {
            echo '  URL: ', $entry->getSelfLink(), PHP_EOL;
        } else {
            echo PHP_EOL, (string) $entry->getContent(), PHP_EOL;
        }
    }
}