php生成静态文件

1,通用生成方法

//获取文件内容 
$content=file_get_contents("http://www.google.com/" );
$id=110;
$filename="$id.html"; //设置静态文件路径及文件名 
if(file_exists($filename)) unlink($filename); //检查是否存在旧文件,有则删除 
$fp = fopen($filename, 'w'); //写入文件 
fwrite($fp, $content); 
echo "is ok";

2,使用curl方法生成

复制代码
$ch=curl_init();//初始化
curl_setopt($ch,CURLOPT_URL,"http://google.com");
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//将curl_exec()获取的信息以文件流的形式返回
curl_setopt($ch,CURLOPT_HEADER,1);//是否将头文件的信息作为数据输出

$output=curl_exec($ch);
if($output===FALSE){
echo "file error";
exit;
}

$info=curl_getinfo($ch);
curl_close($ch);//释放curl句柄

$page=time().".html";//开始构建相应页面
//if(file_exists($page)) unlink($page); //检查是否存在旧文件,有则删除 
$tp = fopen($page, "a+");
fwrite($tp, $output);
fclose($tp);

header("Location:$page");//转向生成页面
复制代码

3,根据文件生成时间判断是否需要再次生成

复制代码
$page="110.html";
$a=filemtime($page);
$now=time();
$nowxx=$now-$a;
echo "time:".date("Y-m-d H:i:s",$now)."-".date("Y-m-d H:i:s",$a)."<br>";
//如果文件存在并且生成时间大于1个小时删除文件
if(file_exists($page)&&$nowxx/60>60){ unlink($page); echo "操作完成"; }
复制代码

 

 

posted @   fsl  阅读(532)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示