思路

用fopen函数和fread函数得到模板,然后用str_replace函数替换模板标签为变量,最后用fwrite函数输出新的HTML页面

index.html模板页面

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>{title}</title>
<meta name="description" content="">
<meta name="keywords" content="">
<link href="" rel="stylesheet">
</head>
<body>
文章内容为:{content}
</body>
</html>

index.php

 <?php
/*
*
* @Authors peng--jun
* @Email 1098325951@qq.com
* @Date 2015-10-04 01:27:23
* @Link http://www.cnblogs.com/xs-yqz/
* @version $Id$
思路
用fopen函数和fread函数得到模板,然后用str_replace函数替换模板标签为变量,最后用fwrite函数输出新的HTML页面
==========================================
*/
header("Content-type: text/html; charset=UTF-8");
$conn=mysql_connect('localhost','root','');
$db=mysql_select_db('minda',$conn);
mysql_query('set names utf8');
$sql="select * from notice";
$query=mysql_query($sql); //print_r($arr);
while($arr=mysql_fetch_array($query))
{
$title=$arr['title'];
$content=$arr['content'];
$file="index.html";
$neirong=$arr['id'].".html";
//fopen函数和fread函数得到的模板
$fp=fopen($file,'r')or die("文件打开失败");//fopen参数有两个,第一个是要被打开文件的URL,第二个是打开方式
$ht=fread($fp,filesize($file));//读取文件的所有内容 $ht=fread($fp,100);//表示从文件中读取前100个字节
//用str_replace函数替换模板标签为变量
$str=str_replace('{title}',$title,$ht);//将$ht中全部的{title}都被$title替换之后的结果,赋值给变量str
$str=str_replace('{content}',$content,$str); //将上面$str中全部的{content}都被$content替换之后的结果,赋值给变量$str
fclose($file);
//用fwrite函数输出新的HTML页面
$file_new=fopen($neirong,'w'); //选定指定的模版
$write=fwrite($file_new,$str); //将内容写入到指定的文件夹中
} /*fgets()读取方式===从文件资源中一行一行的读取文件内容
$handle = fopen("jun.txt", "r") or die("文件打开失败");
while (!feof($handle)) {
# code...
$buffer = fgets($handle,4096);
echo "<b>".$buffer."</b><br>";
}
fclose($handle);
*/ /* readfile()读取方式
readfile("jun.txt");*/ /*fread()读取方式
$handle = fopen("jun.txt", "r") or die("文件打开失败");
$txt = fread($handle, filesize("jun.txt"));
fclose($handle);
echo $txt;
*/ /*fwrite(handle, string)写入文件
$fileName = "jun1.txt";
$handle = fopen($fileName, 'w')or die('打开<b>'.$fileName.'</b>文件失败!!'); for ($row=0; $row < 10; $row++) {
fwrite($handle, $row.":这是写入的文件内容\n");
}
fclose($handle);
*/ /*file_put_contents(filename, data)快速写入文件
$fileName = "jun1.txt";
$data = "共有10条数据\n";
for ($row=0; $row < 10; $row++) {
$data.=$row.":写入的文件内容\n";
}
file_put_contents($fileName, $data);
*/ ?>

PHP fopen和fwrite函数实现创建html页面的更多相关文章

  1. C语言中access、_mkdir、sprintf、 fopen、fwrite函数

    int access(const char *filename, int amode); amode参数为0时表示检查文件的存在性,如果文件存在,返回0,不存在,返回-. 这个函数还可以检查其它文件属 ...

  2. BBS项目详解(forms快速创建登陆页面,登陆验证、通过阅读器进行头像上传的预览、内存管理器)

    BBS项目涉及的知识点 django中知识点 钩子函数(局部钩子和全局钩子) 1.局部钩子就是用来做合法性校验,比如用户名有没有被使用等 2.全局的就是用来做对比校验,比如两次输入的密码是否一致 3. ...

  3. fopen\fread\fwrite\fscanf\fprintf\fseek\feof\rewind\fgets\fputc等系列函数使用总结

    转载自:http://blog.csdn.net/xidianzhimeng/article/details/23541289 1 fopen 函数原型:FILE * fopen(const char ...

  4. fopen()、fwrite()、fread()函数使用说明与示例

    fopen()函数: 1.作用: 在C语言中fopen()函数用于打开指定路径的文件,获取指向该文件的指针. 2.函数原型: FILE * fopen(const char * path,const  ...

  5. fopen\fread\fwrite\fseed函数的使用

    使用 <stdio.h> 头文件中的 fopen() 函数即可打开文件,它的用法为: FILE *fopen(char *filename, char *mode); filename为文 ...

  6. fopen函数和fread函数、fwrite函数

    fopen(打开文件) 相关函数 open,fclose 表头文件 #include<stdio.h> 定义函数 FILE * fopen(const char * path,const ...

  7. PHP fwrite() 函数与 file_put_contents() 函数的比较

    两个 PHP 函数都可以把字符串保存到文件中,fwrite() 函数的格式是: int fwrite ( resource handle , string string [ , int length] ...

  8. fread 和 fwrite 函数用法示例以及注意事项

    1.函数功能   用来读写一个数据块. 2.一般调用形式   fread(buffer,size,count,fp);   fwrite(buffer,size,count,fp); 3.说明   ( ...

  9. PHP fwrite 函数:将字符串写入文件(追加与换行)(转)

    PHP fwrite() fwrite() 函数用于向文件写入字符串,成功返回写入的字符数,否则返回 FALSE . 语法: int fwrite( resource handle, string s ...

随机推荐

  1. Oracle运维 专业的事情交给专业的人来做

    关于Oracle运维的重要性,随便写了几句,放在这儿和大家共勉. Oracle数据库在RDBMS中独占熬头,07年统计其市场份额占关系数据库市场的48.6%稳居首位,而且逐年增加,上升势头强劲.在使用 ...

  2. Less2css error 终极解决方案

    使用sublime Text3 的时候,安装less2Css后,和很多人一样以为大功告成,开始要运行编译less文件,结果开始发现 于是乎开始搜索问题和解决方案,然后就有了下面的解决方案1 方案1:通 ...

  3. 四条命令搞定mysql主从

    一 . 环境准备 先上拓扑图

  4. PHP面试题之小杂鱼

    这里的题目都是比较老的,但是做笔试题时经常碰到,因为这些题目比较凌乱,考的知识点不好分类,就放一块了 /** * 题目:最少代码实现求3个数的最大值 * 三目运算符实现 */ function get ...

  5. php 查找数组中是否存在某项,并返回指定的字符串,可用于检查复选,单选等

    /** * 查找数组中是否存在某项,并返回指定的字符串,可用于检查复选,单选等 * @param $id * @param $ids * @param string $returnstr * @ret ...

  6. HTTP生命周期

    HTTP生命周期 Http 请求 AspNet_ISAIP.DLL (ISAPI扩展,独立于站点外,用于可扩展的桥梁), w3wp.exe (net工作进程) IIS6 以上,6以下为aspnet_w ...

  7. MYSQL 日志文件路径错误 1067错误

    场景再现: ---------------------------------------------------------------------------------------------- ...

  8. LINUX用户管理——/etc/passwd文件详解

      输入vi /etc/passwd 可以查看此文件的内容 .本机内容如下: [root@localhost ~]# vi /etc/passwdroot:x:0:0:root:/root:/bin/ ...

  9. Python学习笔记4-如何快速的学会一个Python的模块、方法、关键字

    想要快速的学会一个Python的模块和方法,两个函数必须要知道,那就是dir()和help() dir():能够快速的以集合的型式列出该模块下的所有内容(类.常量.方法)例: #--encoding: ...

  10. POJ 2029 DP || 暴力

    在大矩形中找一个小矩形 使小矩形包括的*最多 暴力或者DP  水题 暴力: #include "stdio.h" #include "string.h" int ...