php生成靜態頁面,thinkphp生成靜態頁面

本文目錄一覽:

php程序 怎麼生成靜態頁面 純動態頁面怎麼生成靜態頁面 不要CMS模板

原理只需要兩句話,細節你在自己處理就可以了

$content=file_get_contents(“網址”);

file_put_contents(“a.html”,$content);

可以直接粘下拉,把網址換成你想生成靜態頁面的網址,就可以了

希望對你有幫助

PHP頁面怎麼生成靜態的HTML頁面

PHP模板實現靜態化非常方便,比如安裝和使用PHP Smarty實現網站靜態化。

在使用Smarty的情況下,也可以實現頁面靜態化。下面先簡單說一下使用Smarty時通常動態讀取的做法。 

一般分這幾步:

1、通過URL傳遞一個參數(ID);

2、然後根據此ID查詢資料庫;

3、取得數據後根據需要修改顯示內容;

4、assign需要顯示的數據;

5、display模板文件。

Smarty靜態化過程只需要在上述過程中添加兩個步驟。

第一:在1之前使用 ob_start() 打開緩衝區。

第二:在5之後使用 ob_get_contents() 獲取內存未輸出內容,然後使用fwrite()將內容寫入目標html文件。

 

根據上述描述,此過程是在網站前台實現的,而內容管理(添加、修改、刪除)通常是在後台進行,為了能有效利用上述過程,可以使用一點小手段,那就是Header()。具體過程是這樣的:在添加、修改程序完成之後,使用Header() 跳到前台讀取,這樣可以實現頁面HTML化,然後在生成html後再跳回後台管理側,而這兩個跳轉過程是不可見的。

php生成靜態頁面的方法

你這個不是靜態頁面啊…還是動態頁…

如果實現偽靜態的話..

不是PHP可以做到的….應該是APACHE的mod_rewrite

IIS下的ReWrite是收費的..一般虛擬主機不提供~~~

smarty只是模板引擎而已..和URL無關~~

你列印下$_SERVER看看~~

你的頁面在$_SERVER里能得到一個值 $_SERVER[“PATH_INFO”]

包括了你想要的東西..然後去取就可以了~~

如何用PHP輸出靜態頁面

用PHP輸出靜態頁面有2種方法

一種是利用模板技術,另一種是用ob系列函數。兩種方法,看起來都差不多,但是實際上,卻是不同的。

第一種:利用模板

目前PHP的模板可以說是很多了,有功能強大的smarty,還有簡單易用的smart template等。

它們每一種模板,都有一個獲取輸出內容的函數。

我們生成靜態頁面的方法,就是利用了這個函數。

用這個方法的優點是,代碼比較清晰,可讀性好。

這裡我用smarty做例子,說明如何生成靜態頁

?php

require(‘smarty/Smarty.class.php’);

$t = new Smarty;

$t-assign(“title”,”Hello World!”);

$content = $t-fetch(“templates/index.htm”);

//這裡的 fetch() 就是獲取輸出內容的函數,現在$content變數裡面,就是要顯示的內容了

$fp = fopen(“archives/2005/05/19/0001.html”, “w”);

fwrite($fp, $content);

fclose($fp);

?

第二種方法:利用ob系列的函數

這裡用到的函數主要是 ob_start(), ob_end_flush(), ob_get_content(),

其中ob_start()是打開瀏覽器緩衝區的意思,

打開緩衝後,所有來自PHP程序的非文件頭信息均不會發送,

而是保存在內部緩衝區,直到你使用了ob_end_flush().

而這裡最重要的一個函數,就是ob_get_contents(),

這個函數的作用是獲取緩衝區的內容,相當於上面的那個fetch(),

道理一樣的。代碼:

?php

ob_start();

echo “Hello World!”;

$content = ob_get_contents();//取得php頁面輸出的全部內容

$fp = fopen(“0001.html”, “w”);

fwrite($fp, $content);

fclose($fp);

?

PHP網站如何實現網頁偽靜態或靜態?

偽靜態實現方式兩種:

1. web伺服器上設置.html或者.htm等後綴的頁面也通過PHP來處理即可,比如Nginx或者Apache,都有這樣的配置文件,設置PHP處理的文件後綴類型,這樣前台請求的htm文件,實際上是PHP代碼

2. 通過設置web伺服器的rewrite規則來實現,每個web伺服器基本上都有這個功能,看看手冊即可實現

真正的靜態實現:

通過CMS發布系統,後台直接生成真正的靜態頁面,比如新聞網站的新聞發布系統,後台錄入內容後,直接生成html的靜態結果頁面給用戶來訪問,PHP有好多開源的CMS發布系統,你可以下載了研究研究,也可以使用模板引擎smarty來生成靜態頁面。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/275794.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-17 16:06
下一篇 2024-12-17 16:06

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • Centos7配置靜態ip

    本文將詳細闡述如何在Centos7系統中配置靜態ip。 一、查看網路介面 在配置靜態ip之前,我們首先需要查看系統中的網路介面,以確定我們需要配置的網卡是哪一個。 ifconfig…

    編程 2025-04-29
  • 打包後頁面空白的解決方案

    當我們在調試階段時,我們的app可能看起來完美無缺,但當我們進行打包時,在運行app時,我們可能會遇到白屏或空白的問題。在這篇文章中,我們將探討如何解決這種問題。 一、檢查文件路徑…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • Python操作Web頁面

    本文將從多個方面詳細介紹Python操作Web頁面的技巧、方法和注意事項。 一、安裝必要的庫 在Python中操作Web頁面,需要用到一些第三方庫。 pip install req…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若伺服器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • Python中通過對象不能調用類方法和靜態方法的解析

    當我們在使用Python編寫程序時,可能會遇到通過對象調用類方法和靜態方法失敗的問題,那麼這是為什麼呢?接下來,我們將從多個方面對這個問題進行詳細解析。 一、類方法和靜態方法的定義…

    編程 2025-04-27
  • Apache偽靜態配置Java

    本文將會從多個角度闡述如何在Apache中正確偽裝Java應用程序,實現URL的靜態化,提高網站的SEO優化和性能。以下是相關的配置和代碼實例。 一、RewriteEngine的配…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27

發表回復

登錄後才能評論