Maison > Article > développement back-end > PHP implémente la génération par lots de pages statiques HTML
Cet article partage principalement avec vous l'implémentation de la génération par lots de pages statiques HTML en PHP, ce qui est utile pour ceux qui n'ont pas encore compris le moteur de template ou n'ont pas été exposés au framework. Les étudiants qui, comme moi, suivent les principes de paresse et de productivité espèrent réduire le travail répétitif et ennuyeux et éviter une perte de temps inutile.
Principe : L'utilisation de la fonction de remplacement str_replace en PHP,
Vous avez d'abord besoin d'une base de données, je l'appelle newsdata et d'une table : (news) comme indiqué ci-dessous :
Une chose à mentionner, le type de contenu d'actualité et le chemin html mentionné plus tard sont définis sur TEXT et seront affichés dans MySQL-Front, ce qui n'affecte pas l'appel. . Pour afficher le contenu, cliquez ci-dessous et une fenêtre contextuelle apparaîtra. Utilisez un éditeur hexadécimal pour afficher le contenu<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>{news_title}</title></head><body> 新闻标题:{news_title}//调用 新闻内容:{news_contents}//调用</body></html>
<!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>
<?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('".$title."','".$content."','".$path."');";$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);
« au cas où je ne te verrais pas,PHP implémente facilement la génération par lots de pages statiques HTMLBonjour à tous, je suis Yangrl Il s'avère que j'ai fait un tas d'erreurs (idiotes et mignonnes). Après avoir écrit la page, j'ai copié dix copies et modifié le texte, le diablotin, l'url et d'autres contenus à l'intérieur pour faire dix pages (semblable à une page de détails d'actualité, un produit). page de détails, etc. ) En fait, le cadre global n'a pas changé, mais le contenu a changébon après-midi, bonsoir et bonne nuit !——"The Truman Show"
« Êtes-vous prêt à être un Shar-Pei qui ne fait que répéter des tâches ennuyeuses ? »
Il convient aux étudiants qui n'ont pas encore compris le moteur de modèles ou qui n'ont pas été exposés au framework. Ils suivent les principes de paresse et de productivité comme moi, dans l'espoir de réduire le travail répétitif et ennuyeux et d'éviter une perte de temps inutile.
Principe : str_replace en PHP Pour utiliser la fonction de remplacement,
.
Une chose à noter, si le type de contenu d'actualité et le chemin html mentionné plus tard sont définis sur TEXTE, MEMO sera affiché dans MySQL-Front, ce qui n'affecte pas l'appel à afficher. le contenu, cliquez ci-dessous et un éditeur hexadécimal apparaîtra pour afficher le contenu
Vous pourrez ensuite créer un connect.php pour vous connecter à la base de données. c'est qu'il sera possible de référencer directement (require_once) à l'avenir, ou vous pouvez l'écrire directement dans le fichier php<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>{news_title}</title></head><body> 新闻标题:{news_title}//调用 新闻内容:{news_contents}//调用</body></html>et écrivez simplement un formulaire de publication (modelform.html) et soumettez-le au fichier add.php principal 🎜>
<!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>
OK
<?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('".$title."','".$content."','".$path."');";$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);
Recommandations associées :
Introduction à la méthode d'ajout d'un lien de soumission à un bouton dans un page statique HTML
PHP génère un exemple de code de page statique HTML
PHP génère un exemple de code de page statique HTML_Tutoriel PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!