php 每隔30分钟重新写一遍文件。未起作用。

php 每隔30分钟重新写一遍文件。未起作用。不知是怎么回事,请大家帮忙看下。代码如下:

$FileName='data/site_cache/site.php';//网站设置的缓存文件
if(((time()-filectime($FileName))/60)>30)
{SitePrintFile($FileName);}//时间差超过30分钟将从新写文件

//写文件的函数
function SitePrintFile($strFileName)
{
$exec="select * from Site where ID=1";
$result=mysql_query($exec);
if($rs=mysql_fetch_object($result)){
$FileBody="<?php\r\n";
$FileBody=$FileBody."\$Site=array(\r\n";
$FileBody=$FileBody."'BBSName'=>'".$rs->BBSName."',\r\n";
$FileBody=$FileBody."'BBSURL'=>'".$rs->BBSURL."',\r\n";
$FileBody=$FileBody."'WebName'=>'".$rs->WebName."',\r\n";
$FileBody=$FileBody."'WebURL'=>'".$rs->WebURL."',\r\n";
$FileBody=$FileBody."'ICP'=>'".$rs->ICP."',\r\n";
$FileBody=$FileBody."'AdminEMail'=>'".$rs->AdminEMail."',\r\n";
$FileBody=$FileBody."'Skin'=>'".$rs->Skin."',\r\n";
$FileBody=$FileBody."'BBSOpenRem'=>'".$rs->BBSOpenRem."',\r\n";
$FileBody=$FileBody.");\r\n";
}
$OpenFile=fopen($strFileName, 'w+');
fwrite($OpenFile, $FileBody);
fclose($OpenFile);
}
我的意思就是刷新后也不起作用,不过你的两个字眼提醒了我,手册上好像说哪个时间缓存了,不知与这有没有关系。
---------------------------------------------------------
但filemtime函数我试用的时候看到,每刷新一次,它的值都在变,属正常吗?貌似不应该啊。而且它的值是1970 年 1 月 1 日 00:00:00到当前时间的秒数。

<?php
set_time_limit(0);//程序最长执行时间无限制
while(true) {
...//写文件代码段
sleep(60*30);
}

程序提两点小建议
1.生成写入文件的数据时,可以使用mixed var_export ( mixed $expression [, bool $return = false ] )
2. $FileBody=$FileBody."'BBSName'=>'".$rs->BBSName."',\r\n";
<=>
$FileBody .= "'BBSName'=>'".$rs->BBSName."',\r\n";

参考资料:http://cn.php.net/manual/en/function.var-export.php

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-12-12
php程序不会自己执行的,得需要每隔一段时间访问一下这个页面激发程序才可以。
第2个回答  2009-12-12
不用使用filectime函数,这个函数在win32的系统好像得到的事创建的时间。

如果你需要得到修改的时间,用filemtime函数
第3个回答  2019-06-29
<?php
set_time_limit(0);//程序最长执行时间无限制
while(true)
{
...//写文件代码段
sleep(60*30);
}
程序提两点小建议
1.生成写入文件的数据时,可以使用mixed
var_export
(
mixed
$expression
[,
bool
$return
=
false
]
)
2.
$FileBody=$FileBody."'BBSName'=>'".$rs->BBSName."',\r\n";
<=>
$FileBody
.=
"'BBSName'=>'".$rs->BBSName."',\r\n";

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网