用于从mysql表中提取数据的php脚本的缓存选项

时间:2012-12-01 11:21:06

标签: php html mysql caching

我想知道用什么函数来缓存拉取的数据,并在15-30分钟后刷新它。

这是将mysql数据提取到网站的php脚本。

<?php
include('mysql_connection.php');

$c = mysqlConnect();

$locale = $_GET['locale'];
$last_bulletins_id = $_GET['bulletins_id'];

sendQuery ("set character_set_results='utf8'"); 
sendQuery ("set collation_connection='utf8_general_ci'"); 

if(strcmp($locale,"en") != 0)
$locale = "en";
$result = sendQuery("
SELECT bulletins.id, posted_date, message, name
FROM bulletins 
LEFT JOIN players ON (bulletins.player_id = players.user_id)
WHERE bulletins.id > ".$last_bulletins_id." and locale = '".$locale."' 
ORDER BY bulletins.id DESC 
LIMIT 10");
echo '<table width=\"100%\">';
while($row = mysql_fetch_array($result, MYSQL_NUM))
{
    echo '<tr><td width=\"100%\"><b>Date: </b>'.$row[1].'</td></tr>';
    echo '<tr><td width=\"100%\"><b>Author: </b>'.$row[3].'</td></tr>';
    echo '<tr><td width=\"100%\">'.nl2br($row[2]).'</td></tr>';
    echo '<tr><td width=\"100%\"><hr style="height: 2px; border: none; background: #515151;"></td></tr>';
}
echo '</table>';    

mysqlClose($c);

&GT;

1 个答案:

答案 0 :(得分:0)

您应该编写在缓存文件中输出的数据,并检查上次修改文件和加载缓存文件所花费的时间,或者查询数据库并在时间大于您设置的限制时输出新结果。这些功能对您来说很方便:

file-put-contents

filemtime

touch

file-exists