mirror of
https://github.com/RSS-Bridge/rss-bridge.git
synced 2025-08-01 16:45:02 +02:00
[HttpCachingBridgeAbstract] Update to latest version
parent
755825e00a
commit
656f52d988
1 changed files with 4 additions and 34 deletions
|
@ -5,43 +5,21 @@
|
|||
To create a new Bridge extending `HttpCachingBridgeAbstract` you must implement all required functions of [`BridgeAbstract`](BridgeAbstract). `HttpCachingBridgeAbstract` additionally provides following functions:
|
||||
|
||||
* [`get_cached`](#the-get_cached-function)
|
||||
* [`get_cached_time`](#the-get_cached_time-function)
|
||||
* [`remove_from_cache`](#the-remove_from_cache-function)
|
||||
|
||||
Find a [template](#template) at the end of this file.
|
||||
|
||||
## The `get_cached` function
|
||||
|
||||
This function receives the contents of a given URL from cache or, in case the contents have not yet been cached, from the internet.
|
||||
This function receives the contents of a given URL from cache or, in case the contents have not yet been cached, from the internet. You can optionally pass the cache duration as second parameter. If no cache duration is specified, the default value of 24h (86400 seconds) applies.
|
||||
|
||||
```PHP
|
||||
$this->get_cached('your URL');
|
||||
$this->get_cached('your URL', 86400);
|
||||
```
|
||||
|
||||
or if you require the HTML DOM:
|
||||
|
||||
```PHP
|
||||
$html = str_get_html($this->get_cached('your URL');
|
||||
```
|
||||
|
||||
## The `get_cached_time` function
|
||||
|
||||
This function returns the time stamp of the cached file for a given URL.
|
||||
|
||||
```PHP
|
||||
$timestamp = $this->get_cached_time('your URL');
|
||||
```
|
||||
|
||||
**Notice:** This function will download the contents, if the cache file for the given URL does not yet exist!
|
||||
|
||||
## The `remove_from_cache` function
|
||||
|
||||
**Important notice:** This function is not yet fully implemented (file is not actually removed from cache)!
|
||||
|
||||
This function removes the cached file for a given URL from the cache.
|
||||
|
||||
```PHP
|
||||
$this->remove_from_cache('your URL');
|
||||
$html = str_get_html($this->get_cached('your URL', 86400));
|
||||
```
|
||||
|
||||
# Template
|
||||
|
@ -60,15 +38,7 @@ class MySiteBridge extends HttpCachingBridgeAbstract {
|
|||
public function collectData(){
|
||||
// Implement your bridge here!
|
||||
|
||||
// Example for caching a page with automatic removal after 12 hours
|
||||
$url = ''; // Insert your URL here!
|
||||
$timestamp = $this->get_cached_time($url);
|
||||
|
||||
if($timestamp <= strtotime('-12 hours')){ // Cached file is too old (might have changed)
|
||||
$this->remove_from_cache($url);
|
||||
}
|
||||
|
||||
$html = str_get_html($this->get_cached($url));
|
||||
$html = str_get_html($this->get_cached('your URL', 43200)); // 12h duration
|
||||
}
|
||||
}
|
||||
// Imaginary empty line!
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue