一个php生成html类程序_PHP教程
来这里直接用构造函数来实现的,考虑到会有很多的生成静态页的进程,还是改为函数调用,本处保留备用,在类中template()替换成templateHtml()即可实现,
来这里直接用构造函数来实现的,考虑到会有很多的生成静态页的进程,还是改为函数调用,本处保留备用,在类中template()替换成templatehtml()即可实现,
*/
class template
{
var $temp; //读取的模板页文件名(包含路径)
var $html; //要生成的html文件名(包含路径)
var $err; //错误编号
var $test; //数据流
var $arr; //要替换的数组 模式(键名->模板标签 , 键值->替换内容)function template()
{
$this->temp="";
$this->html="";
$this->err=0;
$this->test="";
}function templatehtml($temp,$html,$arr)
{
$err=$this->chkfile($temp);
if((int)$err==0)
{
$fp=fopen($temp,"r"); //只读方式打开模板页
$test=fread($fp,filesize($temp)); //读取模板页的数据流
$test=$this->arr_replace($arr,$test); //替换文件
$err=$this->writefile($html,$test); //生成静态页
}
echo "由模板页 ".$temp." 生成 ".$html.$this->error($err);
return;
}/*
*判断文件是否存在
*返回错误提示
*/function chkfile($file)
{
if (file_exists($file))
{
return 0;
}
return 1;
}
/*
*根据数组文件内容,替换数据流 模式(键名->模板标签 , 键值->替换内容)
*返回数据流
*参数$arr:数组
*参数$test :数据流
*/
function arr_replace($arr,$test)
{
$ss=$test;
foreach ($arr as $key => $value)
{
$ss= str_replace($key,$value,$ss);
}
return $ss;
}
/*
*将数据流,写入到文件中
*返回执行状态
*参数$html:要生成的html文件
*参数$test :数据流
*/
function writefile($html,$test)
{
$stat=2;
if($this->chkfile($html)==0) //判断文件是否存在
{
$stat=0; //已经存在返回0
}
if($f=fopen($html,"w")) //写入方式打开文件,不存在则创建
{
fputs($f,$test);
fclose($f);
$stat=0; //写入成功返回0
}
else
{
$stat=2; //写入失败返回2
}
return $stat;
}
/*
*错误提示
*返回错误提示
*参数$err:错误编号
*参数$file :错误文件
*/
function error($err)
{
$message="";
switch((int)$err)
{
case 0 :
$message=" 静态页生成成功";
break;
case 1 :
$message=" 模板页打开失败,请检查是否存在";
break;
case 2 :
$message=" 文件生成失败,请检查目录权限";
break;
default:
$message=" 未知错误";
}
return $message;
}
/*
*
*主要用来读取模板页,返回数据流 (比如top,foot公用文件,)
*参数$file :模板页路径
*/
function readhtml($file)
{
$test="";
$err=$this->chkfile($file);
if($err==0)
{
$fp=fopen($file,"r"); //只读方式打开模板页
$test=fread($fp,filesize($file)); //读取模板页的数据流
}
else
{
$test=$file.$this->error($err);
}
return $test;}
/*
*
*主要用来删除已生成的文件,不返回
*参数$file :文件路径
*/function delete_file($file)
{
if (file_exists($file))
{
$delete = chmod ($file, 0777);
$delete = unlink($file);
if(file_exists($file))
{
$filesys = eregi_replace("/","",$file);
$delete = system("del $filesys");
clearstatcache();
if(file_exists($file))
{
$delete = chmod ($file, 0777);
$delete = unlink($file);
$delete = system("del $filesys");
}
}
clearstatcache();
}
}
}/*
调用方法demo.html的代码
{title}
{text}
$sc=new template();
//$sc=new template($tmp,$filename,$arr); ()$tmp="../template/temp.php教程"; //模板页
$filename="test.html"; //生成页
$foot="../foot.html"; //包含的底文件,头文件同理$arr=array();
$arr["{title}"]="新标题";
$arr["{text}"]="新内容";
$arr["{foot}"]=$sc->readhtml($foot);
$sc->templatehtml($tmp,$filename,$arr);

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML定義網頁結構,CSS負責樣式和佈局,JavaScript賦予動態交互。三者在網頁開發中各司其職,共同構建豐富多彩的網站。

React通過JSX與HTML結合,提升用戶體驗。 1)JSX嵌入HTML,使開發更直觀。 2)虛擬DOM機制優化性能,減少DOM操作。 3)組件化管理UI,提高可維護性。 4)狀態管理和事件處理增強交互性。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

在PHP中可以通過使用不可預測的令牌來有效防範CSRF攻擊。具體方法包括:1.生成並在表單中嵌入CSRF令牌;2.在處理請求時驗證令牌的有效性。

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。
