You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
1.1 KiB

# gemtext-php
PHP 8 / Composer Library for Gemtext Operations
This library is lightweight, object-oriented Gemtext replacement to gemini-php
## Install
``` bash
composer require yggverse/gemtext:dev-main
```
## Example
### Parse existing document
``` php
// Load document from file
$document = new \Yggverse\Gemtext\Document(
file_get_contents(
'tests/data/document.gmi'
)
);
// Get links
foreach ($document->getLinks() as $link)
{
print(
$link->toString()
);
}
```
### Create new document
``` php
// Init new document
$document = new \Yggverse\Gemtext\Document;
// Append header
$document->append(
new \Yggverse\Gemtext\Entity\Header(
'Hello world'
)
);
// Init new link
$link = new \Yggverse\Gemtext\Entity\Link(
'gemini://geminiprotocol.net',
'The Gemini Program',
'1965-01-19'
);
// Change link date
$link->setDate(
date('Y-m-d')
);
// Append link
$document->append(
$link
);
// Get gemtext
print(
$document->toString()
);
// Save to file
file_put_contents(
'/path/to/file.gmi',
$document->toString()
)
```
## Download
=> https://github.com/YGGverse/gemtext-php GitHub