hans-thomas / epub
A PHP library for reading and manipulating contents and metadata of EPUB files.
v1.0.1
2023-05-28 09:44 UTC
Requires
- php: >=5.6
- ext-dom: *
- hans-thomas/common: ^1.0
Requires (Dev)
- phpunit/phpunit: ~4.0
This package is auto-updated.
Last update: 2024-12-28 13:37:31 UTC
README
PHP library for reading metadata, document structure, and plain text contents from EPUB files.
Origin
This PHP EPUB library is a fork of splitbrain/php-epub-meta. The original code was changed quite a bit to fit our more conventional PHP coding standards in a symfony environment. Additional functionality includes reading the TOC/spine structure of EPUBs and extracting contents from contained XML files.
Installation
Using composer:
composer require hans-thomas/epub
Usage
<?php // Open an EPUB file $epub = new Epubli\Epub\Epub('/path/to/your/book.epub'); // and read some of its metadata $title = $epub->getTitle(); $authors = $epub->getAuthors(); $desc = $epub->getDescription(); // Get the EPUB’s structural elements $toc = $epub->getToc(); $spine = $epub->getSpine(); // Iterate over the EPUB structure foreach ($spine as $spineItem) { // Get some text from the EPUB $chapterText = $spineItem->getContents(); // Or find all navigation points pointing to that spine item $navPoints = $toc->findNavPointsForFile($spineItem->getHref()); // Do something useful with the NavPoints. // At the end, don't forget to close the spine item $spineItem->close(); }