導航:首頁 > 編程語言 > php中生成html

php中生成html

發布時間:2023-11-24 15:15:10

php網頁轉html網頁怎麼弄

雖然不能保證把每個動態頁面都轉化為靜態的html文件,但如果網站是駐留在apache伺服器上,則只需一個簡單的小腳本就可以把大多數動態頁面都轉換成html文件。
確定需要轉換成後綴為html的php文件
目標是那些名下包含動態子頁較多的網頁。以「index.php?category=x」為例,我們需要對「index.php」之後的動態子頁進行轉換。 例如,如果網站里有一個名為「arts and crafts」的子目錄,url為「index.php?category=1」,其它子目錄和這個url只在最後的變數上不同,因此我們需要修改當index.php之後跟隨變數時伺服器對它的打開方式。
通知伺服器在接受一個html頁面的調用請求後打開一個php文件
需要在伺服器上index.php所在的目錄下放置一個.htaccess文本文件。.htaccess文件是apache伺服器上的一個目錄配置設置文件,它提供了針對目錄改變配置的方法,即在一特定的文檔目錄中放置一個包含一個或多個指令的文件(.htaccess文件),來作用於此目錄及其所有子目錄。.htaccess的功能包括設置網頁密碼、設置發生錯誤時出現的文件、改變主頁文件名、禁止讀取文件名、重新導向文件、增加mime類別、禁止列目錄下的文件等。
在需要針對目錄改變伺服器的配置,而對伺服器系統沒有root許可權時,應該使用.htaccess文件。如果伺服器管理員不願意頻繁修改配置,則可以允許用戶通過.htaccess文件自己修改配置,尤其是isp在一台機器上提供多個用戶站點,而又希望用戶可以自己改變配置的情況下,一般會開放部分.htaccess的功能給使用者自行設置。對於vdeck用戶來說,可能需要先創建一個文本文件,然後在管理面板將其更名為.htaccess。現在我們需要在伺服器端指定一些變數。比方說,我需要把「?category=x」這個變數改成「directory-x.html」,這樣就能消除動態頁面無法被搜索引擎檢索的問題。
在開始創建伺服器變數前,我們需要先在這個新建的.htaccess文件中創建一個rewrite engine (url重寫工具)。只需要在文件第一行寫上
rewriteengine on
這就等於告訴伺服器我們要改變一些文件的處理方式。接下來的一行就要指定重寫規則:
rewriterule ^directory-([0-9]*.* index.php?category=$1 [l,nc]
這個指令表明:只要接到url中包含「directory-0」到「directory-9」的任意靜態網頁的頁面調用請求,伺服器將以「index.php?變數」地址返回給調用用戶。
必要在更改實際的php頁面之前先進行一下測試。可以對上面的"重寫規則"進行測試。首先新開一個瀏覽器窗口,在地址欄中輸入「directory-1.htm」或「directory-1.html」,如果我們看到的頁面顯示為「index.php?category=1」就表明改寫規則工作正常。

讓搜索引擎看到我們的靜態化頁面
需要讓搜索引擎能夠看到我們經過「改頭換面」的新的網頁地址。那麼,是不是需要趕緊把網站再向搜索引擎提交一遍呢? 不用這么費勁,我們只需打開php文件編輯一下就行了。不過在此之前,應記得將要修改的每個腳本都做個備份,將其存放在硬碟上。然後需要確定創建更改鏈接地址的程序的不同地方。最好在前端而不要在後台進行更改。php文件將會從.htaccess文件中得到形如「index.php?category=x」之類的信息。我們需要把這些動態生成的網頁地址更改一下,並以靜態化頁面地址顯示給用戶和搜索引擎。即將所有url中包含「index.php?category=」的部分替換為「directory-」,並加上.html後綴。

⑵ PHP如何生成HTML的思路

一、 具備本地調試PHP的功能

在WINDOWS XP操作系統下,筆者建議你可以到網上下載一個PHP+MYSQL+APHCHE的伺服器套裝,如華軍軟體園,去那裡搜索一下就可以下載到。下載完後默認安裝即可,這樣您就具備了在本地測試PHP的功能了,省去了很多手動配置的麻煩,怎麼樣,簡單吧,OK,這僅僅只是第一步。

二、 構思新聞發布系統所具備的功能

首頁的新聞發布往往是通過後台更新的,後台的更新無非是由添加、編輯、刪除數據等基本的功能所實現的。在這里,你可以使用網頁設計軟體來構建你的想要的後台界面,其功能的實現當然是要用到PHP嘍。這一步建議您先想好新聞發布系統要有的功能。在這里,如何用PHP添加、編輯、刪除數據就不再重復,因為重點是如何在這基礎上生成靜態技術。



三、 PHP生成HTML的技術原理。

哈哈。費話說了那麼多,終於到了該講的地方了。其實,這一原理並不復雜,綜合地來講的話,應該是PHP中一個替換數據語法的應用。OK,講一個簡單範例吧,一步一步地分析!相信聰明的你能看得明白的咯,仔細看好每一步即可,在這里,只是引導大家如何做而已,具體的可以實踐一下!

(1)在MYSQL里新建一資料庫,命名為 database (可自定義),新建一表,命名為 news(因為是新聞發布嘛,取個好記的名字即可,可自定義),然後建立這幾個欄位名:
id (自動遞增,這是關鍵,類型:INT)
title (顧名思義,新聞標題,類型可取 TEXT)
content (新聞內容,類型可取 TEXT)
path (HTML文件路徑,類型可取 TEXT)

(2)建立 conn.php
這是連接資料庫的PHP文件,你可以把連接數據的語句單獨放在這一文件里,以後多個需要連接資料庫的文件直接引用這個文件即可。

(3)設計添加新聞的表格 add.form 簡單的源代碼如下:

12345<form method=」post」 action=」add.php」> //提交至 add.php新聞標題:<input type=」text」 name=」title」 size=」20」><br>新聞內容:<textarea name=」content」 cols=」10」 rows=」25」></textarea><br><input type=」submit」 name=」提交」></form>

(4)建立一個 HTML 的模板,另存為model.htm,和 add.php可以在同一目錄下。
示例源代碼:

123456<html><body>此新聞的標題:{title}此新聞的內容:{content}</body></html>

{ }大括弧內的內容即是要被替換的內容,整個靜態模板的設計可以根據自己的思路,但{ }內被替換的內容必須包含在內,如上面的{title},{content};咔咔~簡單地說,設計好一個很好看的新聞模板後,把要被替換的如{title},{content}等標記放到需要的地方就可以了撒。

(5)詳解 add.php 源碼

041424344<?phprequire_once(「conn.php」); //引用conn.php,連接資料庫$title=$_POST[「title」];$content=$_POST[「content」]; //獲得表單變數//以下建立一文本文檔,其值自動計數$countfile="count.txt";if(!file_exists($countfile)){fopen($countfile,"w"); //如果此文件不存在,則自動建立一個}$fp=fopen($countfile,"r");$num=fgets($fp,20);$num=$num+1; //每次其值自動加一fclose($fp);$fp=fopen($countfile,"w");fwrite($fp,$num); //更新其值fclose($fp);//利用上面自動計數的值獲得HTML的路徑$path$houzui=」.html」;$path=$num.$houzui;//這樣形成的路徑是自動增長的,如1.html,2.html,3.html……….添加一條新聞便自動加上1//以下用SQL語句添加數據至表 news$sql=」insert into news (title,content,path) values (『」.$title.」』,』」.$content.」』,』」.$path.」』)」;$query=mysql_query($sql);//以下為關鍵之處,把從表單獲得的數據替換模板中的{title},{content}標記$fp=fopen(「model.htm」,」r」) //只讀打開模板$str=fread($fp,filesize(「mode.htm」));//讀取模板中內容$str=str_replace(「{title}」,$title,$str);$str=str_replace(「{content}」,$content,$str);//替換內容fclose($fp);$handle=fopen($path,」w」); //寫入方式打開新聞路徑fwrite($handle,$str); //把剛才替換的內容寫進生成的HTML文件fclose($handle);//收尾工作:echo 「<a href=$path target=_blank>查看剛才添加的新聞</a>」;?>

OK,整個生成HTML的示例源碼就到這里,其關鍵是用了替換的方法。
$str=str_replace(「{被替換的內容}」,$替換的內容,$str);

因此,總結一下以上的做法:先設計好新聞模板,把需要被替換的內容用{ }放到模板中相應的位置,然後設計表單,再是最後的表單處理程序,把從表單中獲取的變數替換模板中相應的內容即可,這樣每次都會生成不同的HTML;如果需要修改HTML的內容也是一樣的,獲得修改後的表單內容後,先用 update 語句更新資料庫,再重新替換一下模板中的內容即可;刪除的話,先delete表中要刪除的內容,再用unlink($path) 來刪除HTML的物理文件即可。

⑶ 怎樣給php頁面里添加html頁面

PHP中嵌入HTML有多種方式,這里列出幾種常用方式:

PHP代碼輸出HTML代碼;

HTML代碼中嵌入PHP;

PHP中使用include ()函數引用Html文件;

示例:

HTML代碼(test.html)

<body>
<p>我是一段Html代碼</p>
</body>

方式一:

<?php
$int=rand(0,1);
if($int==1){
echo"<p>取到的隨機數是1</p>";
}else{
echo"<p>取到的隨機數不是1</p>";
}
?>

⑷ php怎樣直接輸出HTML代碼而不被編譯

通過PHP的一個內置的函數htmlspecialchars($html);

如果你要是先把一段HTML代碼存入資料庫在取出來的話
可以這樣入庫是 htmlspecialchars($html , ENT_QUOTES);
出庫是 htmlspecialchars_decode($html , ENT_QUOTES);

⑸ php如何生成HTML頁面 要詳細的生成過程代碼

很簡單,用ob_start壓制,然後保存到一個html頁面就可以了,寫了個小演示
訪問時在後面加參數 ?id=xxx xxx為任意數字,你把裡面的輸出換成你的動態頁面就可以了,代碼里有解釋

<?php
ob_start();

/*下面的內容就是你原來的動態頁面*/
$id=isset($_GET["id"])?$_GET["id"]:'';
if ($id!=''){
echo "原使用參數的頁面 參數為".$id."</br>已生成<a href=\"$id.html\">$id.html</a>";
}
/*結束*/

$info=ob_get_contents();
$file=fopen($id.'.html','w');
fwrite($file,$info);
fclose($file);
?>

閱讀全文

與php中生成html相關的資料

熱點內容
如何使用python中的pygame 瀏覽:832
python實用小工具 瀏覽:22
怎麼在安卓手機上去除馬賽克 瀏覽:233
農行濃情通app怎麼下載 瀏覽:531
怎麼把原文件夾找回來 瀏覽:535
俄羅斯方塊實現python思路 瀏覽:735
漢語拼音英語編譯代碼 瀏覽:501
程序員應具備的能力 瀏覽:606
手機石墨文檔文件夾訪問許可權 瀏覽:656
客戶端如何登陸域文件伺服器 瀏覽:530
兩位數的平方計演算法 瀏覽:930
android圖片分塊 瀏覽:715
圖形平移命令 瀏覽:962
聚類演算法JAVA代碼 瀏覽:407
網站圖標素材壓縮包 瀏覽:892
娛樂化app怎麼做 瀏覽:638
加密貨幣行業前景如何 瀏覽:575
arm查詢法的局限性和編譯流程 瀏覽:80
醒圖的文件夾叫什麼 瀏覽:998
php程序員北京 瀏覽:179