當前位置:首頁 » 編程語言 » php生成靜態

php生成靜態

發布時間: 2023-03-20 21:37:35

php怎麼處理可以生成這樣的靜態頁呢:比如computer.html - PHP進階討論

用模版製做出你想要的html頁面格式,然後,把php語句把從資料庫里讀出的數據,或者是從文件里讀出的數據按模版的格局寫入,然後,用模file函數進行創建文件,如果想自動生成link的話,就要把文件的指定路徑存入到資料庫里。我是這樣做的。。。。

Ⅱ 關於PHP生成靜態頁的一個問題!

1、可以設置偽靜態,就不用頃判拆去更新;
2、也可以設置在用戶訪問時自動去更新;可在index.html頁通過ajax 設置用戶訪問去執行index.php 文雀棗件;當沖肆用戶訪問時用JS判斷時間是否要更新,比如這個index.html生成的3天內不更新,超過3天用戶訪問到就更新。
3、可設置定時半夜,訪問的人比較少時,統一對最近有修改的內容進行更新。

Ⅲ PHP中靜態方法與非靜態方法的使用及區別

PHP中靜態方法一起是真正生成靜態頁面,其二是偽靜態 ,

與動態相比 ,做成靜態可以提升兆塵程序性族升禪能以及利於搜索引擎索引。

答題不笑者易,互相理解,您的採納是我前進的動力,感謝您。

希望回答對你有幫助,如果有疑問,請繼續追問

Ⅳ php如何實現網頁靜態

一、靜態化的優點:
1有利於搜索引擎收錄網站頁面的信息:搜索引擎更喜歡靜態的,更變於抓取,搜索引擎SEO排名會更容易提高。
2靜態網頁化網頁穩定
3可以提高網頁載入速度
4減輕伺服器負擔,瀏覽器不需要頻發調用資料庫。
5資料庫出錯不會影響正常訪問
二、偽靜態
PHP偽靜態:是利用Apache mod_rewite實現url重寫的方法
改寫訪問地址,能夠通過URL的PATHINFO模式來改動它。讓它看上去更像一個靜態頁面。從而有更大的幾率被搜索引擎抓取和收錄,僅是對搜索引擎比較友好,偽靜態化
三、純靜態化
純靜態化,就是生成HTML文件的方式,我們須要開啟PHP自帶的緩存機制,即ob_start來開啟緩存。而且在ob_start之前不能有不論什麼輸出,否則運行失敗,然後我們用ob_get_contents函數來獲取緩存中的內容,該函數會返回一個字元串。第三個函數就是ob_end_clean,它用來清空緩存中的內容而且關閉,成功返回True,失敗返回False。
<?php
if(file_exists("match.html") && (time()-filemtime("match.html"))<300)
{
//如果存在對應的靜態文件,則直接訪問
require_once("match.html");
}else{
//這里用數組來模擬資料庫操作,現實一般都是操作資料庫得到對應數據
$student = array("huangxing","chenyuwei",'xufei','zhangjingwen','xuepei');
ob_start();
//載入模板
require_once("muban.php");
file_put_contents("match.html",ob_get_clean());
require_once('match.html');
}

Ⅳ php生成靜態頁面的方法

你這個不是靜態頁面啊...還是塌磨動態頁...

如果實現偽靜態的話..
不是PHP可以豎衫旅做到的....應該是APACHE的mod_rewrite
IIS下的ReWrite是收費的..一餘凳般虛擬主機不提供~~~

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

你列印下$_SERVER看看~~
你的頁面在$_SERVER里能得到一個值 $_SERVER["PATH_INFO"]
包括了你想要的東西..然後去取就可以了~~

Ⅵ PHP網站如何純靜態化

純靜態網站在網站中是怎麼實現的?
純靜態的製作技術是需要先把網站的頁面總結出來,分為多少個樣式,然後把這些頁面做成模板,生成的時候需要先讀取源文件然後生成獨立的以.html結尾的頁面文件,所以說純靜態網站需要更大的空間,不過其實需要的空間也不會大多少的,尤其是對於中小型企業網站來說,從技術上來講,大型網站想要全站實現純靜態化是比較困難的,生成的時間也太過於長了。不過中小型網站還是做成純靜態的比較,這樣做的優點是很多的。

而動態網站又是怎麼進行靜態處理的?
頁面靜態化是指將動態頁面變成html/htm靜態頁面。動態頁面一般由asp,php,jsp,.net等程序語言編寫而成,非常便於管理。但是訪問網頁時還需要程序先處理一遍,所以導致訪問速度相對較慢。而靜態頁面訪問速度快,卻又不便於管理。那麼動態頁面靜態化即可以將兩種頁面的好處集中到一起。

Ⅶ php 靜態方法 是什麼意思

<?php
header('content-type:text/html;charset=utf-8');
/*
普通方法,存放類內,只有一份
靜態方法,也是存放於類內,只有一份
區別在於:普通方法需要對象去調用,需要綁定$this
即,普通方法,必須要有對象,然後讓對象來調用
而靜態方法,不屬於哪一個對象,因此不需要綁定$this
即,不需要對象也可以調用
*/
class Human{
static public $head=1;
public function easyeat(){
echo '普通方法吃飯<br />';
}
static public function eat(){
echo '靜態方法吃飯<br />';
}
public function intro(){
echo $this->name;
}
}
Error_reporting(E_ALL|E_STRICT);
//此時沒有對象!方法可以執行
Human::eat();
/*
以下方法easyeat是一個非靜態方法,就由對象來調用,但,用類來調用此方法來也可以執行,而嚴格狀態下,此方法會執行,同時報錯,
Strict Standards: Non-static method Human::easyeat() should not be called statically in D:\application\PHPnow-1.5.6\htdocs\yan18\types\staticfun.php on line 32
*/
Human::easyeat();
/*
接上,從邏輯來理解,如果用類名靜態調用非靜態(普通)方法
比如:intro()
那麼,這個$this是指哪個對象呢??
因此會報錯,因為找不到對象!
Fatal error: Using $this when not in object context in D:\application\PHPnow-1.5.6\htdocs\yan18\types\staticfun.php on line 23
*/
Human::intro();
/*
如上分析,其實,非靜態方法,是不能由類名靜態調用的,但目前,php中的面向對象檢測不夠嚴格,只要靜態方法中沒有$this關鍵字,就會轉化成靜態方法來處理!
*/
$li=new Human();
$li->eat();
/*
總結:
類》訪問->靜態方法(類的方法)->可以
類》訪問->普通方法(對象的方法)->不可以(雖然方法里不用$this關鍵字時,可以!但不支持這種寫法)
對象》訪問》靜態方法(類的方法)->可以
對象》訪問》普通方法(對象的方法)->可以
*/
?>

Ⅷ [php]怎麼能改成靜態的啊

這個就叫做靜態化了,常見的方法有幾種:
1、用smarty模板,是一種緩存機制,簡單學習一下就好了;
2、把頁面全部生成了靜態html文件,常見的方法是按照網頁的規律,用正則匹配網址,然後確定一個靜態的html路徑,路徑存到資料庫里,生成為html文件,然後鏈接全部讀取html的路徑。
3、偽靜態,就是伺服器把地址偽裝成html格式的,其實不是真正的靜態html文件。可以搜索:apache rewrite 重寫。是根據網址的規則,用正則表達式匹配的,比如新聞頁面news.php?id=100,匹配成news/100.html。

熱點內容
原生安卓開機動畫在哪裡 發布:2024-05-09 03:52:19 瀏覽:394
微信收藏在哪個文件夾 發布:2024-05-09 03:47:03 瀏覽:826
ftp遠程登錄 發布:2024-05-09 03:44:40 瀏覽:227
linuxoracle配置環境變數配置 發布:2024-05-09 03:44:38 瀏覽:499
分類信息網站的源碼 發布:2024-05-09 03:31:18 瀏覽:99
sqlupdate日期 發布:2024-05-09 03:27:14 瀏覽:880
java培訓有人要嗎 發布:2024-05-09 03:21:16 瀏覽:970
c語言多次輸入數據 發布:2024-05-09 03:12:50 瀏覽:738
pythonide使用 發布:2024-05-09 02:56:52 瀏覽:350
社區電商源碼 發布:2024-05-09 02:33:00 瀏覽:150