PHP生成静态文件

本文引自网络

首先引入自己的FILE类:

<?php
/**
* 文件处理类
*/
class Files
{
private $resource = null; //文件资源句柄
function __construct($fileName,$mode=‘r‘)
{
$dirName = dirname($fileName);//文件路径
$baseName = basename($fileName);//文件名

//检查并创建文件夹
self::mkdir($dirName);

$this->resource = fopen($fileName,$mode.‘b‘);
if($this->resource)
{
flock($this->resource,LOCK_EX);//进行锁定
}
}
//文件写入函数
public function write($content)
{
$worldsnum = fwrite($this->resource,$content);
return is_bool($worldsnum) ? false : $worldsnum;
}
}

写一个函数来生成静态文件:

private function writeHtml($path,$content){
if(! class_exists(‘Files‘)){
$this -> load ->file(APPPATH.‘libraries/Files‘.EXT);//本人用的CI 框架,引入文件类这里要稍作改动
$f = new Files($path,‘w+‘);
$res = $f->write($content);
$f->save();
}

最后在需要生成静态页面的地方调用上面那个函数:

function crativehtml{
$url = "PHP动态文件路径";
$content = file_get_contents($url);//获取文件内容
$this -> _writeFile($path.‘文件名.html‘,$content);
}

就这样一个静态文件就生成了,最后一个文件可以写在多个地方来生成不同的静态文件、

原文地址:https://www.cnblogs.com/yszr/p/9321611.html

时间: 2024-10-12 19:45:52

PHP生成静态文件的相关文章

用include()和ob_get_contents( )方法 生成静态文件

1. 生成静态文件可以在打开缓冲区的前提下,用include()方法去包含要执行的动态文件,这样该动态文件就会在缓冲区中执行,执行完毕后的静态HTML代码就保存在缓冲区中,然后用ob_get_contents()方法去获取缓冲区中的内容,(注意:在获取缓冲区内容的前提是一定要打开缓冲区ob_start();),将这些内容保存到一个字符串中,再将该字符串写入到文件中即可. <?php header("Content-type: text/html; charset=UTF-8");

三:理解Page类的运行机制(例:在render方法中生成静态文件)

我这里只写几个常用的事件1.OnPreInit:此事件后将加载个性化信息和主题2.OnInit:初始化页面中服务器控件的默认值但控件的状态没有加载,没有创建控件树3.OnPreLoad:控件完成状态和回传数据的加载4.Page_Load:此事件是在OnInit中订阅的5.Render:呈现最终页面的内容 假设有一个文章数据库以前都是通过article.aspx?id=123的动态形式访问的现在我们想要减轻服务器压力,把文章生成静态文件先看article.aspx的程序 using System;

golang生成静态文件

a文件是go install 产生的,目前无法反编译获得源码,就算获得难度也是极大 将a文件对外发布出去,其他人便可正常像引用官方包一样引用它 如:我们写了一个包,将其a文件交给客户,不将源码交给客户,客户便可像正常引用go官方包一样正常引用第三方包 将要发布的闭源包.a文件放到 $GOROOT/pkg/linx_amd/ 目录中. 再将发布包的源码保留只有包声明的源文件放到 $GOROOT/src/say/ 目录中. 操作如下: *发布方*: 例如有say包要发布: 1, $cd $GOPAT

PHP代码为什么不能直接保存HTML文件——&gt;PHP生成静态页面教程

1.服务器会根据文件的后缀名去进行解析,如果是HTML文件则服务器不会进行语法解析,而是直接输出到浏览器. 2.如果一个页面中全部都是HTML代码而没有需要解析的PHP语法,则没有必要保存为PHP文件,这样反而会降低运行效率. 3.如果是需要PHP控制HTML代码的输出,比如需要PHP判断用户是否登陆,如果登陆则输出A,未登录则输出B.这就需要PHP来进行控制了.HTML不能实现这样的功能 PHP生成静态页面教程 ,一些基本的概念 一,PHP脚本与动态页面. PHP脚本是一种服务器端脚本程序,可

PHP代码为什么不能直接保存HTML文件——&amp;gt;PHP生成静态页面教程

1.server会依据文件的后缀名去进行解析,假设是HTML文件则server不会进行语法解析.而是直接输出到浏览器. 2.假设一个页面中所有都是HTML代码而没有须要解析的PHP语法,则没有必要保存为PHP文件,这样反而会减少执行效率. 3.假设是须要PHP控制HTML代码的输出,比方须要PHP推断用户是否登陆,假设登陆则输出A,未登录则输出B.这就须要PHP来进行控制了.HTML不能实现这种功能 PHP生成静态页面教程 ,一些主要的概念 一,PHP脚本与动态页面. PHP脚本是一种serve

减少服务器压力php生成静态xml文件

一.引 言 在速度上,静态页面要比动态页面的比方php快很多,这是毫无疑问的,但是由于静态页面的灵活性较差,如果不借助数据库或其他的设备保存相关信息的话,整体的管理上比较繁琐,比方修改编辑.比方阅读权限限制等,但是,对应一些我们经常频频使用的文件,比方说,开发的新闻发布系统,我们不希望很多用户都读取数据库才显示结果,这样一方面消耗了服务器的资源,另一方面占去了浏览者大量可贵的响应时间,所有,有了"静态页面话"的做法,当前很多网站都采用这种技术,一般都是由管理后台控制,或者生成html直

ThinkPHP生成静态页buildHtml方法

原来ThinkPHP自带了生成静态页的函数buildHtml,使用起来很方便!最新的手册里没写这个方法,向大家介绍一下. PHP 1 2 3 4 5 6 7 8 9 10 11 protected function buildHtml($htmlfile='',$htmlpath='',$templateFile='') { $content = $this->fetch($templateFile); $htmlpath   = !empty($htmlpath)?$htmlpath:HTML

比较详细PHP生成静态页面教程

一,PHP脚本与动态页面. PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文件混合, 也可以类,函数封装等形式,以模板的方式对用户请求进行处理.无论以何种方式,它的基本原理是这样的.由客户端提出请求,请求某一页面 -----> WEB服务器引入指定相应脚本进行处理 -----> 脚本被载入服务器 -----> 由服务器指定的PHP解析器对 脚本进行解析形成HTML语言形式 ----> 将解析后的HTML语句以包的方式传回给浏览器.由此不难看出,在页面发送到浏览器后,P

生成静态页面

<?php header('content-type:text/html;charset=utf-8'); //静态文件名称 $filename="jt.html"; //检测静态文件是否存在(存在情况) if(file_exists($filename)){ //每**秒更新静态文件 if(time()-filemtime($filename)>10){ echo "缓存时间到期,将重新生成静态页面 <br>"; //删除之前旧的静态文件