php 后缀改成html,第1张

PHP模板实现静态化非常方便,比如安装和使用PHP Smarty实现网站静态化。

在使用Smarty的情况下,也可以实现页面静态化。下面先简单说一下使用Smarty时通常动态读取的做法。 

一般分这几步:

1、通过URL传递一个参数(ID);

2、然后根据此ID查询数据库;

3、取得数据后根据需要修改显示内容;

4、assign需要显示的数据;

5、display模板文件

Smarty静态化过程只需要在上述过程中添加两个步骤。

第一:在1之前使用 ob_start() 打开缓冲区。

第二:在5之后使用 ob_get_contents() 获取内存未输出内容,然后使用fwrite()将内容写入目标html文件。

 

根据上述描述,此过程是在网站前台实现的,而内容管理(添加、修改、删除)通常是在后台进行,为了能有效利用上述过程,可以使用一点小手段,那就是Header()。具体过程是这样的:在添加、修改程序完成之后,使用Header() 跳到前台读取,这样可以实现页面HTML化,然后在生成html后再跳回后台管理侧,而这两个跳转过程是不可见的。

php修改html文件的方法:1、使用fopen函数打开html文件;2、使用fread函数读取文件内容;3、通过filesize函数读取文件的大小;4、通过fwrite函数修改html文件内容;5、使用fclose函数关闭打开的文件。

推荐:《PHP视频教程》

PHP修改HTMl模板

新知识点:

PHP部分文件操作函数(fopen,fread,filesize,fwrite,fclose)

fopen(路径和文件名,打开方式) 打开文件函数

fread(打开的文件,结束位置) 读取文件内容 r-只读 w-写入 a-读写

filesize(路径和文件名) 读取文件的大小,字节为计量单位

fwrite(路径和文件名,写入的内容) 写入文件内容

fclose(路径和文件名) 关闭打开的文件

unlink() mkdir()删除函数

unlink(路径和文件名) 删除文件函数

mkdir(路径和目录名) 删除目录函数

以往知识点:

foreach()遍历函数

$str_replace()替换函数函数

代码展示:

模板tmphtml

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>标题:{title}</title>

</head>

<body>

<!-- 这是一个html模板 -->

内容:{content}

</body>

</html>生成新的HTMl的操作:htmlphp

<

$fp = fopen("tmphtml", "r");

// 读取文件的全部内容

$str = fread($fp, filesize("tmphtml"));

// 替换文件内容

$str = str_replace("{title}", "今日新闻", $str);

$str = str_replace("{content}", "今日新闻要点", $str);

fclose($fp);

// 只写方式打开文件

$handle = fopen("newshtml","w");

fwrite($handle, $str);

fclose($handle);

echo("生成成功");

>实际中,如果需要批量生成html文件可以使用如下方式:

<

$array = array(array("今日新闻","国家医疗改革"),array("昨日回顾","日本福岛91级地震"));

foreach ($array as $key => $value) {

// 只读方式打开文件

$fp = fopen("tmphtml", "r");

// 读取文件的全部内容

$str = fread($fp, filesize("tmphtml"));

// 替换文件内容

$str = str_replace("{title}",$value[0], $str);

$str = str_replace("{content}", $value[1], $str);

fclose($fp);

// 只写方式打开文件

$handle = fopen($key"html","w");

fwrite($handle, $str);

fclose($handle);

echo("生成成功");

}

>

这个就叫做静态化了,常见的方法有几种:

1、用smarty模板,是一种缓存机制,简单学习一下就好了;

2、把页面全部生成了静态html文件,常见的方法是按照网页的规律,用正则匹配网址,然后确定一个静态的html路径,路径存到数据库里,生成为html文件,然后链接全部读取html的路径。

3、伪静态,就是服务器把地址伪装成html格式的,其实不是真正的静态html文件。可以搜索:apache

rewrite

重写。是根据网址的规则,用正则表达式匹配的,比如新闻页面newsphpid=100,匹配成news/100html。

dedecms如何去掉首页indexhtml出现的原因是动态PHP转换为静态html的原因,去除方法如下:

第一种、伪静态设置代码,具体操作如下:

在主机里面找到伪静态文件htaccess,下载到本地,用编辑器打开,在里面加入以下代码DirectoryIndex indexhtml indexphp indexhtm然后在上传至主机。

第二种、在网站虚拟主机里面把网站默认首页indexhtml放到indexphp前面,具体如下图:

DEDECMS无法生成主页HTML是设置错误造成的,解决方法为:

1、首先,登录网站后台。

2、点击系统选项卡。

3、点击:系统基本参数。

4、点击:核心设置链接。

5、然后将DedeCMS安装目录这一项,修改为当前项目所在的文件夹名称,最后点击确定按钮。

6、网站正常运行了,故障已解决。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » php 后缀改成html

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情