Skip to content

mekras/atom

Repository files navigation

Atom Syndication Format support library

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;
        }
    }
}

About

Atom Syndication Format support library

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages