將動(dòng)態(tài)網(wǎng)頁轉(zhuǎn)成靜態(tài)頁面的意義,及作用,下面由南昌網(wǎng)站建設(shè)公司工程師進(jìn)行介紹:
有技術(shù)人員提問:
1,除了提高瀏覽速度,把頁面生成為html有什么好處?
舉一個(gè)常見的例子,一個(gè)新聞系統(tǒng)需要做全站(前臺)靜態(tài)的。它有首頁index.html,分頁NewsList.html,詳細(xì)頁NewsShow.html。
2,每個(gè)詳細(xì)頁面生成為靜態(tài)頁面的時(shí)候,
(1),往往頭部都包含小導(dǎo)航,如:首頁>公司新聞>公司文化,還有頁面旁邊有“熱點(diǎn)新聞、相關(guān)新聞”“廣告”等,除了主體部分,這些原 來用PHP實(shí)現(xiàn)時(shí)都是動(dòng)態(tài)變化的,現(xiàn)在做成靜態(tài)的,怎么辦?假如相關(guān)新聞?dòng)凶儎?dòng),那是不是當(dāng)前這個(gè)詳細(xì)頁面需要重新生成一次?
(2),當(dāng)編輯文章時(shí),是不是要重新生成一次?
3,分頁顯示的時(shí)候
(1),同樣含有問題2-1的問題
(2),假設(shè)總共有3頁,每頁10記錄,假設(shè)記錄不增加不減少。假設(shè)每個(gè)頁面只顯示文章標(biāo)題。如果某個(gè)文章標(biāo)題改變了,那么是不是它所屬那個(gè)頁面(如NewsList3.html)要重新生成一次?
(3),假設(shè)總共有3頁,每頁10記錄。如果記錄有增或者減少,那么各個(gè)分頁 (如:NewsList1.html,NewsList2.html,NewsList3.html)是不是都需要重新生成?因?yàn)橛锌赡? NewsList3.html這個(gè)頁面里需要顯示的文章又多了一條或者少了一條。
(4),頁面下面經(jīng)常會(huì)帶有[1][2][3][4]等分頁鏈接。如果增加或者減少了記錄,那么總頁數(shù)有可能增加,意思是有可能總共有5頁或者2頁 了。那么各個(gè)分頁是不是又必須重新生成一次?首頁末頁問題,假設(shè)原來只有3頁,末頁是NewsList3.html,現(xiàn)在可能增加了很多記錄,末頁變成 NewsList100.html了,如果以前生成過99個(gè)頁面,那是不是99個(gè)頁面的末頁都必須改成NewsList100.html,必須重新生成?
(5),怎么區(qū)分已經(jīng)生成過的?將要生成的?
4,是不是每次修改數(shù)據(jù)庫,都必須全盤通通重新生成一次?
南昌網(wǎng)站設(shè)計(jì)公司工程師進(jìn)行回答:
1.fread讀模板(讀取之前要用fopen打開模板),或者模板保存在數(shù)據(jù)庫里,通過替換關(guān)鍵字,然后fwrite保存為頁面.
2.讀取已經(jīng)處理好的PHP頁面信息,fwrite生成.
2,每個(gè)詳細(xì)頁面生成為靜態(tài)頁面的時(shí)候,
(1),往往頭部都包含小導(dǎo)航,如:首頁>公司新聞>公司文化,還有頁面旁邊有“熱點(diǎn)新聞、相關(guān)新聞”“廣告”等,除了主體部分,這些原 來用PHP實(shí)現(xiàn)時(shí)都是動(dòng)態(tài)變化的,現(xiàn)在做成靜態(tài)的,怎么辦?假如相關(guān)新聞?dòng)凶儎?dòng),那是不是當(dāng)前這個(gè)詳細(xì)頁面需要重新生成一次?
在模板文件中定義 keyword ,在后臺生成頁面時(shí),替換導(dǎo)航, 例如, 后臺生成數(shù)據(jù)時(shí),當(dāng)前頁的類別 是 A, 則 str_replace(CODE,KEYWORD,"A").
(2),當(dāng)編輯文章時(shí),是不是要重新生成一次?
是,
3,分頁顯示的時(shí)候
(1),同樣含有問題2-1的問題
同上.
(2),假設(shè)總共有3頁,每頁10記錄,假設(shè)記錄不增加不減少。假設(shè)每個(gè)頁面只顯示文章標(biāo)題。如果某個(gè)文章標(biāo)題改變了,那么是不是它所屬那個(gè)頁面(如NewsList3.html)要重新生成一次?
是.
(3),假設(shè)總共有3頁,每頁10記錄。如果記錄有增或者減少,那么各個(gè)分頁 (如:NewsList1.html,NewsList2.html,NewsList3.html)是不是都需要重新生成?因?yàn)橛锌赡? NewsList3.html這個(gè)頁面里需要顯示的文章又多了一條或者少了一條。
是.
(4),頁面下面經(jīng)常會(huì)帶有[1][2][3][4]等分頁鏈接。如果增加或者減少了記錄,那么總頁數(shù)有可能增加,意思是有可能總共有5頁或者2頁 了。那么各個(gè)分頁是不是又必須重新生成一次?首頁末頁問題,假設(shè)原來只有3頁,末頁是NewsList3.html,現(xiàn)在可能增加了很多記錄,末頁變成 NewsList100.html了,如果以前生成過99個(gè)頁面,那是不是99個(gè)頁面的末頁都必須改成NewsList100.html,必須重新生 成?
是.
(5),怎么區(qū)分已經(jīng)生成過的?將要生成的?
數(shù)據(jù)庫里應(yīng)該有一個(gè)字段存放,對應(yīng)的頁面文件。
5,是不是每次修改數(shù)據(jù)庫,都必須全盤通通重新生成一次?
只生成對當(dāng)前數(shù)據(jù)關(guān)聯(lián)的頁面.
專業(yè)專注于南昌網(wǎng)頁制作、南昌建網(wǎng)站、南昌網(wǎng)站開發(fā)項(xiàng)目,為用戶提供高品質(zhì)的網(wǎng)絡(luò)產(chǎn)品和優(yōu)質(zhì)的服務(wù)是我們始終追求的目標(biāo)!