• 技术文章 >后端开发 >php教程

    php生成静态文件的多种方法分享_PHP教程

    2016-07-21 15:17:56原创392
    第一种:将php动态页面内容生成静态
    复制代码 代码如下:

    ob_start();#开启服务器缓存
    include_once 'Index.php';
    $ctx=ob_get_contents();#获取缓存
    ob_end_clean();#清空缓存
    $fh=fopen("index.html","w+");
    fwrite($fh,$ctx);#写入html,生成html
    fclose($fh);
    /*
    1、Flush:刷新缓冲区的内容,输出。
    函数格式:flush()
    说明:这个函数经常使用,效率很高。
    2、ob_start :打开输出缓冲区
    函数格式:void ob_start(void)
    说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。
    3 、ob_get_contents :返回内部缓冲区的内容。
    使用
    函数格式:string ob_get_contents(void)
    说明:这个函数会返回当前缓冲区中的内容,如果输出缓冲区没有激活,则返回 FALSE 。
    4、ob_get_length:返回内部缓冲区的长度。
    使用方法:int ob_get_length(void)
    说明:这个函数会返回当前缓冲区中的长度;和ob_get_contents一样,如果输出缓冲区没有激活。则返回 FALSE。
    5、ob_end_flush :发送内部缓冲区的内容到浏览器,并且关闭输出缓冲区。
    使用方法:void ob_end_flush(void)
    说明:这个函数发送输出缓冲区的内容(如果有的话)。
    6、ob_end_clean:删除内部缓冲区的内容,并且关闭内部缓冲区
    使用方法:void ob_end_clean(void)
    说明:这个函数不会输出内部缓冲区的内容而是把它删除!
    7、ob_implicit_flush:打开或关闭绝对刷新
    使用方法:void ob_implicit_flush ([int flag])
    */

    第二种:
    php 静态文件生成类(自家用)
    复制代码 代码如下:

    class CreateHtml
    {
    function mkdir( $prefix= 'article' )
    {
    $y = date('Y');
    $m = date('m');
    $d = date('d');
    $p=DIRECTORY_SEPARATOR;
    $filePath='article'.$p.$y.$p.$m.$p.$d;
    $a=explode($p,$filePath);
    foreach ( $a as $dir)
    {
    $path.=$dir.$p;
    if(!is_dir($path))
    {
    //echo '没有这个目录'.$path;
    mkdir($path,0755);
    }
    }
    return $filePath.$p;
    }
    function start()
    {
    ob_start();
    }
    function end()
    {
    $info = ob_get_contents();
    $fileId = '12345';
    $postfix = '.html';
    $path = $this->mkdir($prefix= 'article');
    $fileName = time().'_'.$fileId.$postfix;
    $file=fopen($path.$fileName,'w+');
    fwrite($file,$info);
    fclose($file);
    ob_end_flush();
    }
    }
    ?>
    $s=new CreateHtml();
    $s->start();
    ?>


    asdfasdfasdfasdfasdfasdfasdfasdfasdf

    adfasdfasdf

    >

    $s->end();
    ?>

    www.bkjia.comtruehttp://www.bkjia.com/PHPjc/325634.htmlTechArticle第一种:将php动态页面内容生成静态 复制代码 代码如下: ob_start();#开启服务器缓存 include_once 'Index.php'; $ctx=ob_get_contents();#获取缓存 ob_end_...

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 生成 静态 文件 多种 方法 分享 一种 php 动态 页面 内容 生成 静态 复制 代码 如下 s
    上一篇:xml在joomla表单中的应用详解分享_PHP教程 下一篇:php长字符串定义方法_PHP教程
    php培训_php实战培训【立即报名】-php中文网第20期

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 分享一个有趣的php版本的扫雷!• PHP学习18例• PHP闭包(Closure)初探• 详解PHP的Yii框架的运行机制及其路由功能,yii运行机制_PHP教程• 配置eAccelerator和XCache扩展来加速PHP程序的执行,_PHP教程
    1/1

    PHP中文网