思路
用fopen函数和fread函数得到模板,然后用str_replace函数替换模板标签为变量,最后用fwrite函数输出新的HTML页面
index.html模板页面
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 6 <title>{title}</title> 7 <meta name="description" content=""> 8 <meta name="keywords" content=""> 9 <link href="" rel="stylesheet"> 10 </head> 11 <body> 12 文章内容为:{content} 13 </body> 14 </html>
index.php
1 <?php 2 /* 3 * 4 * @Authors peng--jun 5 * @Email 1098325951@qq.com 6 * @Date 2015-10-04 01:27:23 7 * @Link http://www.cnblogs.com/xs-yqz/ 8 * @version $Id$ 9 思路 10 用fopen函数和fread函数得到模板,然后用str_replace函数替换模板标签为变量,最后用fwrite函数输出新的HTML页面 11 ========================================== 12 */ 13 header("Content-type: text/html; charset=UTF-8"); 14 $conn=mysql_connect('localhost','root',''); 15 $db=mysql_select_db('minda',$conn); 16 mysql_query('set names utf8'); 17 $sql="select * from notice"; 18 $query=mysql_query($sql); 19 20 //print_r($arr); 21 while($arr=mysql_fetch_array($query)) 22 { 23 $title=$arr['title']; 24 $content=$arr['content']; 25 $file="index.html"; 26 $neirong=$arr['id'].".html"; 27 //fopen函数和fread函数得到的模板 28 $fp=fopen($file,'r')or die("文件打开失败");//fopen参数有两个,第一个是要被打开文件的URL,第二个是打开方式 29 $ht=fread($fp,filesize($file));//读取文件的所有内容 $ht=fread($fp,100);//表示从文件中读取前100个字节 30 //用str_replace函数替换模板标签为变量 31 $str=str_replace('{title}',$title,$ht);//将$ht中全部的{title}都被$title替换之后的结果,赋值给变量str 32 $str=str_replace('{content}',$content,$str); //将上面$str中全部的{content}都被$content替换之后的结果,赋值给变量$str 33 fclose($file); 34 //用fwrite函数输出新的HTML页面 35 $file_new=fopen($neirong,'w'); //选定指定的模版 36 $write=fwrite($file_new,$str); //将内容写入到指定的文件夹中 37 } 38 39 40 41 /*fgets()读取方式===从文件资源中一行一行的读取文件内容 42 $handle = fopen("jun.txt", "r") or die("文件打开失败"); 43 while (!feof($handle)) { 44 # code... 45 $buffer = fgets($handle,4096); 46 echo "<b>".$buffer."</b><br>"; 47 } 48 fclose($handle); 49 */ 50 51 /* readfile()读取方式 52 readfile("jun.txt");*/ 53 54 /*fread()读取方式 55 $handle = fopen("jun.txt", "r") or die("文件打开失败"); 56 $txt = fread($handle, filesize("jun.txt")); 57 fclose($handle); 58 echo $txt; 59 */ 60 61 62 63 /*fwrite(handle, string)写入文件 64 $fileName = "jun1.txt"; 65 $handle = fopen($fileName, 'w')or die('打开<b>'.$fileName.'</b>文件失败!!'); 66 67 for ($row=0; $row < 10; $row++) { 68 fwrite($handle, $row.":这是写入的文件内容\n"); 69 } 70 fclose($handle); 71 */ 72 73 /*file_put_contents(filename, data)快速写入文件 74 $fileName = "jun1.txt"; 75 $data = "共有10条数据\n"; 76 for ($row=0; $row < 10; $row++) { 77 $data.=$row.":写入的文件内容\n"; 78 } 79 file_put_contents($fileName, $data); 80 */ 81 82 ?>