PHP implements batch generation of html static pages

小云云
Release: 2023-03-21 06:38:02
Original
4354 people have browsed it

This article mainly shares with you how to implement batch generation of HTML static pages in PHP, which is useful for those who have not yet understood the template engine or have not been exposed to the framework. Students who, like me, follow the principles of laziness and productivity, hope to reduce repetitive boring work and avoid unnecessary waste of time.

Principle: The use of str_replace replacement function in PHP,


First requires a database, I call him newsdata. and a table: (news) as shown below:

PHP implements batch generation of html static pages

One thing to mention, the type of the news content and the html path mentioned later is set to TEXT. MEMO will be displayed in MySQL-Front, which does not affect the call. To view the content, click below and a pop-up will appear. Use a hexadecimal editor to view the content

PHP implements batch generation of html static pages


Then you can create a connect.php to connect to the database. The advantage is that it can be directly referenced (require_once) in the future. ok, you can also write directly in the php file
PHP implements batch generation of html static pages


Then there is the template file (model.html), because we only need to call the data and change the content we want to change. ok, other things like navigation, footer, left and right backgrounds remain unchanged. I’m going to implement it in the simplest way. (Damn, I’m so lazy!) Once you understand it, of course it can be extended. Write a cool and domineering template like the one I wrote [manual funny]. Where to replace, enclose it in curly braces. Just open the whole thing.

<!DOCTYPE html><html lang="en"><head>
    <meta charset="UTF-8">
    <title>{news_title}</title></head><body>
    新闻标题:{news_title}//调用
    新闻内容:{news_contents}//调用</body></html>
Copy after login
Copy after login

By the way, simply write a release form (modelform.html) and submit it to the main add.php file

<!DOCTYPE html><html lang="en"><head>
    <meta charset="UTF-8">
    <title>modelform</title></head><body>
    <form method="post" action="add.php">
        新闻标题:<input type="text" name="news_title" id=""><br/>
        新闻内容:<textarea name="news_contents" cols="50" rows="10"></textarea><br/>
        <input type="submit" value="发布">
    </form></body></html>
Copy after login
Copy after login

The next step is the key add .php

<?php
header("content-type:text/html;charset=utf-8");//引用连接数据库文件require_once("connect.php");//获取表单数据$title=$_POST["news_title"];$content=$_POST["news_contents"];//建一个txt,值自增,用作命名$countFile="count.txt";//文件不存在则创建if (!file_exists($countFile)) {    fopen($countFile,"wb");
}$handle=fopen($countFile,"rb");$num=fgets($handle,20);//每次增加1$num=$num+1;fclose($handle);//更新$num$handle=fopen($countFile,"wb");fwrite($handle,$num);fclose($handle);//获取html路径,可自定义$extend=".html";$path="news".$num.$extend;//插入数据$sql="INSERT news(news_title,news_contents,news_path) VALUES(&#39;".$title."&#39;,&#39;".$content."&#39;,&#39;".$path."&#39;);";$conn->query($sql);/**---开始替换---**///打开html模板$handle=fopen("model.html","rb");//读取模板内容$str=fread($handle,filesize("model.html"));//替换 str_replace("被替换的","替换成","在哪替换")//为什么在$str里替换?因为上面我们才读取的模板内容,肯定在模板里换撒$str=str_replace("{news_title}", $title, $str);$str=str_replace("{news_contents}",$content,$str);fclose($handle);//把替换的内容写进生成的html文件$handle=fopen($path,"wb");fwrite($handle,$str);fclose($handle);
Copy after login

OK!
PHP implements batch generation of html static pages

PHP implements batch generation of html static pages

PHP implements batch generation of html static pages

PHP implements batch generation of html static pages

##Finally, thanks to "yeqihong" for referring to his article Three Methods of Generating Static HTML Web Pages with PHP. Good night!

“in case I don’t see you,

good afternoon, good evening, and good night!——"The Truman Show""

Simple implementation of batch generation of html static pages in PHP

Hello everyone, I am Yangrl.

It turns out that I made a bunch of mistakes (silly and cute). After writing the page, I copied ten copies and changed the text, imp, url and other contents inside to make ten pages (similar to news details page, product details page, etc. ) In fact, the overall framework has not changed, but the content has changed
“Are you willing to be a Shar-Pei who only repeats boring tasks? ”
It is used for students who have not yet understood the template engine or have not been exposed to the framework. They follow the principles of laziness and productivity like me, hoping to reduce repetitive boring work and avoid unnecessary waste of time.
Principle: str_replace in PHP To use the replacement function,


first requires a database, I call it newsdata. and a table: (news) as shown below:

PHP implements batch generation of html static pages# #One thing to note, if the type of the news content and the html path mentioned later is set to TEXT, MEMO will be displayed in MySQL-Front, which will not affect the call. To view the content, click below and a hexadecimal editor will pop up to view the content.

PHP implements batch generation of html static pages

Then you can create a connect.php to connect to the database. The advantage is that it will be ok to directly reference (require_once) in the future, or you can write it directly in the php file.


PHP implements batch generation of html static pages

Then there is the template file (model.html), because we only need to call the data and change the content we want to change. Other things like navigation and footer are , the background on the left and right remains unchanged. I implemented it in the simplest way. (I’m so lazy!) Once you understand it, you can certainly expand it and write a template that is as cool and domineering as what I wrote [Manual Funny] , wherever you want to replace, open it as soon as the curly braces are enclosed.
<!DOCTYPE html><html lang="en"><head>
    <meta charset="UTF-8">
    <title>{news_title}</title></head><body>
    新闻标题:{news_title}//调用
    新闻内容:{news_contents}//调用</body></html>
Copy after login
Copy after login

By the way, simply write a release form (modelform.html) and submit it to the main add.php file
<!DOCTYPE html><html lang="en"><head>
    <meta charset="UTF-8">
    <title>modelform</title></head><body>
    <form method="post" action="add.php">
        新闻标题:<input type="text" name="news_title" id=""><br/>
        新闻内容:<textarea name="news_contents" cols="50" rows="10"></textarea><br/>
        <input type="submit" value="发布">
    </form></body></html>
Copy after login
Copy after login

The next step is add.php
<?php
header("content-type:text/html;charset=utf-8");//引用连接数据库文件require_once("connect.php");//获取表单数据$title=$_POST["news_title"];$content=$_POST["news_contents"];//建一个txt,值自增,用作命名$countFile="count.txt";//文件不存在则创建if (!file_exists($countFile)) {    fopen($countFile,"wb");
}$handle=fopen($countFile,"rb");$num=fgets($handle,20);//每次增加1$num=$num+1;fclose($handle);//更新$num$handle=fopen($countFile,"wb");fwrite($handle,$num);fclose($handle);//获取html路径,可自定义$extend=".html";$path="news".$num.$extend;//插入数据$sql="INSERT news(news_title,news_contents,news_path) VALUES(&#39;".$title."&#39;,&#39;".$content."&#39;,&#39;".$path."&#39;);";$conn->query($sql);/**---开始替换---**///打开html模板$handle=fopen("model.html","rb");//读取模板内容$str=fread($handle,filesize("model.html"));//替换 str_replace("被替换的","替换成","在哪替换")//为什么在$str里替换?因为上面我们才读取的模板内容,肯定在模板里换撒$str=str_replace("{news_title}", $title, $str);$str=str_replace("{news_contents}",$content,$str);fclose($handle);//把替换的内容写进生成的html文件$handle=fopen($path,"wb");fwrite($handle,$str);fclose($handle);
Copy after login

OK!


PHP implements batch generation of html static pages

PHP implements batch generation of html static pages

PHP implements batch generation of html static pages

Related recommendations:

Introduction to the method of adding a submit link to a button in an html static page

PHP generates HTML static page example code

PHP generates HTML static page example code_PHP tutorial

The above is the detailed content of PHP implements batch generation of html static pages. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template