這篇文章將為大家詳細(xì)講解有關(guān)使用php怎么生成靜態(tài)頁面,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
“專業(yè)、務(wù)實(shí)、高效、創(chuàng)新、把客戶的事當(dāng)成自己的事”是我們每一個人一直以來堅(jiān)持追求的企業(yè)文化。 創(chuàng)新互聯(lián)是您可以信賴的網(wǎng)站建設(shè)服務(wù)商、專業(yè)的互聯(lián)網(wǎng)服務(wù)提供商! 專注于網(wǎng)站制作、成都網(wǎng)站建設(shè)、軟件開發(fā)、設(shè)計(jì)服務(wù)業(yè)務(wù)。我們始終堅(jiān)持以客戶需求為導(dǎo)向,結(jié)合用戶體驗(yàn)與視覺傳達(dá),提供有針對性的項(xiàng)目解決方案,提供專業(yè)性的建議,創(chuàng)新互聯(lián)建站將不斷地超越自我,追逐市場,引領(lǐng)市場!1、什么是靜態(tài)化
就比如我們平時寫項(xiàng)目的時候,大部分的頁面都是會傳參數(shù)進(jìn)去,通過php標(biāo)簽把這些參數(shù)展示出來。因?yàn)槲覀兊膮?shù)隨時可以變化,所以頁面上的內(nèi)容也跟著參數(shù)變化,這就是動態(tài)化的頁面。與之相反,靜態(tài)化就是純粹的html,頁面上的內(nèi)容不需要通過php或者java等編程語言來改變。
關(guān)于靜態(tài)化的優(yōu)點(diǎn),網(wǎng)上也都說的很清楚了,這邊不再一一贅述,總之就是打開速度夠快,能抗住大流量訪問。
2、靜態(tài)化寫法
(1)第一種寫法是通過ob_start()緩存來輸出
在php文件中編寫html代碼,然后用bo_get_content獲取到,然后輸出到html文件,類似于:
<?php //打開輸出控制緩存 ob_start(); echo "<html><head><title>test頁面</title></head><body>Hello world</body></html>"; //獲取緩沖區(qū)的內(nèi)容 $out = ob_get_contents(); //關(guān)閉輸出緩存 ob_end_clean(); //打開test.html文件開啟寫入權(quán)限 $fp = fopen("test.html", "w"); if (!$fp) { echo "Fail";die; } else { //寫入文件 fwrite($fp, $out); //關(guān)閉文件 fclose($fp); echo "Success"; }
參考:php輸出控制函數(shù)和輸出函數(shù)生成靜態(tài)頁面
這種寫法個人感覺會稍微亂一點(diǎn),而且如果頁面復(fù)雜的話,寫出來的php+html代碼會有些雜亂,所以博主選用的是第二種方法。
(2)提前寫好模板頁,然后進(jìn)行替換
先準(zhǔn)備好靜態(tài)文件,然后把要替換的部分標(biāo)出來,如{title},在php程序中用file_get_content獲取html文件的內(nèi)容,然后進(jìn)行替換,替換之后保存為文件。
模板頁:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>{top_title}</title> <link rel="stylesheet" href=" " rel="external nofollow" > </head> <body> <div class="news-details-template"> <h2>{title}</h2> <div class="author">{author}</div> <div class="date">{show_time}</div> <div class="line"></div> <div> {content} </div> </div> </body> </html>
我們先編寫好模板頁面,包括都有哪部分需要替換,基本的樣式等,提前寫好
php替換:
$path = \Yii::getAlias('@xxx').'/views/site/notice-detail.php'; $content = file_get_contents($path); //引入模板 //獲取要替換的值進(jìn)行字符串的替換 $content = str_replace('{top_title}',$title,$content); $content = str_replace('{title}',$title,$content); ....... $dir = $path ."/html/"; if (!file_exists($dir)) { mkdir($dir); } $filename=$dir.'/'.$filename; //這里就不判斷html是否存在了,因?yàn)閷懭霑采w $result = file_put_contents($filename,$content);//寫入內(nèi)容到對應(yīng)靜態(tài)文件中
大概就是先通過file_get_contents獲取模板頁的內(nèi)容,然后通過str_replace進(jìn)行標(biāo)簽的替換,替換完成之后,通過file_pu_contents寫入到新文件即可。生成的html,我們可以生成多個html,讓前端根據(jù)不同的頁面去訪問不同的html即可。
三、生成預(yù)覽
生成html之后,一般來說是需要預(yù)覽給工作人員看看的,畢竟人家也不懂技術(shù),不知道到底生成的是啥
1、使用dialog打開窗口
靜態(tài)頁:
//這是我們要打開的窗口,先隱藏 <div id="dialog-form-record" > <div id="Content_record"> </div> </div>
JS定義底部按鈕:
var arrButton = { "Release": { 'text': '按鈕名稱', 'priority': 'secondary', 'class': 'btn btn-success', 'id':'', 'click':點(diǎn)擊事件 }, "Cancel": { 'text': 'Cancel', //取消按鈕 'priority': 'secondary', "id":'xxx', 'click': function () { dialogRecord.dialog( "close" ); } } }; //定義寬高 dialogRecord = $( "#dialog-form-record" ).dialog({ autoOpen: false, height: 800, width: 1400, modal: true, buttons:arrButton, close: function() { $( "#Content_record" ).html(""); dialogRecord.dialog( "close" ); } });
JS打開窗口:
//定義標(biāo)題和窗口大小 $( "#dialog-form-record" ).dialog( "option", "title", "Preview Html" ); $( "#dialog-form-record" ).dialog({ modal: true, height: 800, width: 1400 });
2、使用iframe引入剛才生成的靜態(tài)文件
(1)js引入iframe
//加個時間戳,防止緩存 for (i in response.) iframe += "<iframe class='news_iframe' id='iframe"+ i +"' src='"+ response.url.url +"/news/html/"+ response.zh[i] + "?timestamp= " + new Date().getTime() + "'></iframe>"; } //把iframe寫入到html $( "#en_content" ).html(iframe);
3、注意:
(1)iframe的src里面不能有空格之類的東西
(2)iframe去除邊框
(3)iframe加載速度慢,所以加個onload事件,當(dāng)iframe加載完之后再顯示
var iframe = document.getElementById("iframe" + count); checkFinishedDownload(iframe); function checkFinishedDownload(ifr) { if (ifr.attachEvent) { ifr.attachEvent("onload", function() { //iframe加載完成后你需要進(jìn)行的操作 }); } else { ifr.onload = function() { //iframe加載完成后你需要進(jìn)行的操作 }; } }
php,一個嵌套的縮寫名稱,是英文超級文本預(yù)處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種 HTML 內(nèi)嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在服務(wù)器端執(zhí)行的嵌入HTML文檔的腳本語言,語言的風(fēng)格有類似于C語言,現(xiàn)在被很多的網(wǎng)站編程人員廣泛的運(yùn)用。
關(guān)于使用php怎么生成靜態(tài)頁面就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
網(wǎng)站標(biāo)題:使用php怎么生成靜態(tài)頁面-創(chuàng)新互聯(lián)
本文路徑:http://bm7419.com/article28/ighcp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、定制網(wǎng)站、營銷型網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站營銷、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容