PHP如何生成静态页

 

$hotNews_id = $request -> get('hotNews_id');
//生成静态页
        $page = public_path() . '/static'.'/'.'hotNewsDetail_'.$hotNews_id.'.html';

        if(file_exists($page) && filemtime($page) - time() < 1800){
            //echo '静态页面';
            echo file_get_contents($page);
            exit;
        }else{

            $data = hotNews::where(['hotNews_id'=>$hotNews_id])
                -> get()
                -> toArray();
            foreach ($data as $k => $v){
                $data[$k]['ctime'] = date('Y-m-d');
            }
            $data = array_reduce($data, 'array_merge', array());

            $string = view('index.hotNewsDetail',['info' => $data]);
            return $this->create_static_page(public_path().'/static','hotNewsDetail_'.$hotNews_id.'.html',$string);
//生成静态页方法
function create_static_page($path,$file_name,$content){
    if(is_dir($path)){
        $file_name = $this -> handle_file_name($path,$file_name);
        file_put_contents($file_name, $content);
        chmod($file_name,0777);

    }

    return $content;
}
//文件路径处理函数
function handle_file_name($path,$file_name){
    if(substr($path, -1,1)=='/'){
        return $path.$file_name;
    }else{
        return $path.'/'.$file_name;
    }
}
//删除静态页方法
function delete_static_page($file){
    if(is_file($file)){
        unlink($file);
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值