My php project is using the reddit JSON api to grab the title of the current page’s submission.
Right now I am doing running some code every time the page is loaded and I’m running in to some problems, even though there is no real API limit.
I would like to store the title of the submission locally somehow. Can you recommend the best way to do this? The site is running on appfog. What would you recommend?
This is my current code:
<?php
/* settings */
$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$reddit_url = 'http://www.reddit.com/api/info.{format}?url='.$url;
$format = 'json'; //use XML if you'd like...JSON FTW!
$title = '';
/* action */
$content = get_url(str_replace('{format}',$format,$reddit_url)); //again, can be xml or json
if($content) {
if($format == 'json') {
$json = json_decode($content,true);
foreach($json['data']['children'] as $child) { // we want all children for this example
$title= $child['data']['title'];
}
}
}
/* output */
/* utility function: go get it! */
function get_url($url) {
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,1);
$content = curl_exec($ch);
curl_close($ch);
return $content;
}
?>
Thanks!
Introduction
Here is a modified version of your code
Output
New List : 7
Simple Demo
The Problem
I see some things you want to achieve here namely
From what i understand you need is a simple cache copy of your data so that you don’t have to load the url all the time.
Simple Solution
A simple cache system you can use is memcache ..
Example A
Example B
You can use
Last Modification Dateas the cache key as so that you would only save new copy only if the document is modifiedSince your class implements
JsonSerializableyou can json encode your result and also store in a Database like MongoDB or MySQLClass Used