ياهو توزيع RSS الطقس مع نظام الكاش Yahoo! Weather RSS Parsing With Cache System
ياهو توزيع RSS الطقس مع نظام الكاش Yahoo! Weather RSS Parsing With Cache System
ياهو توزيع RSS الطقس مع نظام الكاش Yahoo! Weather RSS Parsing With Cache System

كود:
01function retrieveYahooWeather($zipCode="92832") {02    $path = CACHE_DIR . '/cache.xml';
03    $cached = get_cache_value($path);    
04    if(false !== $cached){
05        echo "nFROM CACHEn";
06        return $cached;
07    } else {
08       echo "nFROM LIVEn";
09       $url = "http://weather.yahooapis.com/forecastrss?p=$zipCode&u=c";
10       $result = file_get_contents($url);
11        
12       set_cache_value($path, $result);
13       return $result;
14    }
15}
16 
17define(CACHE_DIR, 'E:/xampp/xampp/htdocs/tmp');
18define(CACHE_AGE, 3600);
19 
20function get_cache_value($path){
21    if(file_exists($path)){
22        $now = time();
23        $file_age = filemtime($path);
24        if(($now - $file_age) < CACHE_AGE){
25            return file_get_contents($path);
26        } else {
27            return false;
28        }
29    } else {
30        return false;
31    }
32}
33 
34function set_cache_value($path, $value){
35    return file_put_contents($path, $value);
36}