談PHP生成靜態(tài)頁面
Jun 08, 2016 pm 05:33 PM一、引 言
在速度上,靜態(tài)頁面要比動態(tài)頁面的比方php快很多,這是毫無疑問的,但是由于靜態(tài)頁面的靈活性較差,假如不借助數據庫或其他的設備保存相關信息的話,整體的治理上比較繁瑣,比方修改編輯.比方閱讀權限限制等,但是,對應一些我們經常頻頻使用的文件,比方說,開發(fā)的新聞發(fā)布系統(tǒng),我們不希望很多用戶都讀取數據庫才顯示結果,這樣一方面消耗了服務器的資源,另一方面占去了瀏覽者大量可貴的響應時間,所有,有了"靜態(tài)頁面話"的做法,當前很多網站都采用這種技術,一般都是由治理后臺控制,或者生成html直接顯示,或者xhtml用css控制顯示,或者生成xml用xslt顯示,這些技術都不是難的,在這里我就淺顯的說說生成html的方法.
二、預備知識
模板技術:
緩存技術:
有些信息比方經常不變的,但是還是能變的信息放在緩存中以加快顯示速度,這是很有價值的,所謂的緩存,通俗的理解就是一些保存在服務器端的共用信息.它是于服務器同生死的,我們在保存緩存的時候可以指定下次更新的時間的判定,比方要在5分鐘更新一次,可以記錄上次更新的時間,和當前時間比較,假如大于 5 分鐘 ,讀取數據庫,更新換成,否則直接讀取緩存數據,當然,緩存需要客戶端用戶激活的,只需一次.
ob_start()函數:打開輸出緩沖區(qū).
函數格式 void ob_start(void)
說明:當緩沖區(qū)激活時,所有來自PHP程序的非文件頭信息均不會發(fā)送,而是保存在內部緩沖區(qū)。為了輸出緩沖區(qū)的內容,可以使用ob_end_flush()或flush()輸出緩沖區(qū)的內容。
Flush:刷新緩沖區(qū)的內容,輸出。
函數格式:flush()
說明:這個函數經常使用,效率很高。
ob_get_contents :返回內部緩沖區(qū)的內容。
函數格式:string ob_get_contents(void)
說明:這個函數會返回當前緩沖區(qū)中的內容,假如輸出緩沖區(qū)沒有激活,則返回 FALSE.
ob_get_length:返回內部緩沖區(qū)的長度。
函數格式:int ob_get_length(void)
說明:這個函數會返回當前緩沖區(qū)中的長度;和ob_get_contents一樣,假如輸出緩沖區(qū)沒有激活,則返回 FALSE.
ob_end_clean:刪除內部緩沖區(qū)的內容,并且關閉內部緩沖區(qū)
函數格式:void ob_end_clean(void)
說明:這個函數不會輸出內部緩沖區(qū)的內容而是把它刪除
ob_end_flush:發(fā)送內部緩沖區(qū)的內容到瀏覽器,并且關閉輸出緩沖區(qū)
函數格式:void ob_end_flush(void)
說明:這個函數發(fā)送輸出緩沖區(qū)的內容(假如有的話)
ob_implicit_flush:打開或關閉絕對刷新
函數格式:void ob_implicit_flush ([int flag])
說明:默認為關閉緩沖區(qū),打開絕對輸出后,每個腳本輸出都直接發(fā)送到瀏覽器,不再需要調用 flush()
文件寫入:
int fwrite ( resource handle, string string [, int length] )
fwrite() 把 string 的內容寫入 文件指針 handle 處。 假如指定了 length,當寫入了 length 個字節(jié)或者寫完了 string 以后,寫入就會停止,視乎先碰到哪種情況。
fwrite() 返回寫入的字符數,出現錯誤時則返回 FALSE 。
相關參考官方網站: 文件參考
三、解決方案
思路:開啟 ob_start緩沖,當已經調出數據的時候獲取 ob_get_contents,然后生成靜態(tài)頁,ob_end_clean清除緩沖.ok,就這么來,來看一個例子(php mysql的結合):
創(chuàng)建數據庫:
CREATE TABLE `bihtml` (
`id` int(11) NOT NULL auto_increment,
`szdtitle` varchar(16) NOT NULL,
`szdcontent` text NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM;

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

En Java, void signifie ? vide ?, c'est-à-dire ? ne renvoie rien ?. Lorsque la méthode est déclarée, cela signifie qu'elle n'a aucune valeur de retour. void correspond à une classe wrapper "java.lang.Void". La classe Void est modifiée avec final et est une classe d'espace réservé non instanciable utilisée pour enregistrer une référence à l'objet Class qui représente le mot-clé Java void.

Convertir les types de données de base en cha?nes à l'aide de la fonction String.valueOf() de Java Dans le développement Java, lorsque nous devons convertir les types de données de base en cha?nes, une méthode courante consiste à utiliser la fonction valueOf() de la classe String. Cette fonction peut accepter les paramètres des types de données de base et renvoyer la représentation sous forme de cha?ne correspondante. Dans cet article, nous explorerons comment utiliser la fonction String.valueOf() pour les conversions de types de données de base et fournirons quelques exemples de code pour

Méthode de conversion d'un tableau de caractères en cha?ne?: cela peut être réalisé par affectation. Utilisez la syntaxe {char a[]=" abc d\0efg ";string s=a;} pour laisser le tableau de caractères attribuer directement une valeur à la cha?ne et l'exécuter. le code pour terminer la conversion.

Remplacez les caractères (cha?nes) dans une cha?ne à l'aide de la fonction String.replace() de Java. En Java, les cha?nes sont des objets immuables, ce qui signifie qu'une fois qu'un objet cha?ne est créé, sa valeur ne peut pas être modifiée. Cependant, vous pouvez rencontrer des situations dans lesquelles vous devez remplacer certains caractères ou cha?nes dans une cha?ne. à l'heure actuelle, nous pouvons utiliser la méthode replace() dans la classe String de Java pour implémenter le remplacement de cha?ne. La méthode replace() de la classe String a deux types?:

Utilisez la fonction String.length() de Java pour obtenir la longueur d'une cha?ne. En programmation Java, la cha?ne est un type de données très courant. Nous avons souvent besoin d'obtenir la longueur d'une cha?ne, c'est-à-dire le nombre de caractères qu'elle contient. En Java, nous pouvons utiliser la fonction length() de la classe String pour obtenir la longueur d'une cha?ne. Voici un exemple de code simple?: publicclassStringLengthExample{publ

void en C est un mot-clé spécial utilisé pour représenter un type vide, ce qui signifie des données sans type spécifique. En langage C, void est généralement utilisé dans les trois aspects suivants. Le type de retour de la fonction est void. En langage C, les fonctions peuvent avoir différents types de retour, tels que int, float, char, etc. Cependant, si la fonction ne renvoie aucune valeur, le type de retour peut être défini sur void. Cela signifie qu'une fois la fonction exécutée, elle ne renvoie pas de valeur spécifique. Par exemple?: voidhelloWorld()

En PHP, la valeur de retour de type void signifie que la fonction ne renvoie aucune valeur et est généralement utilisée pour des opérations telles que la mise à jour d'enregistrements qui ne nécessitent pas de valeur de retour. Utilisez le mot-clé void lors de la déclaration d'une fonction void ; lors de l'appel d'une fonction void, le résultat ne doit pas être affecté à une variable. Cas pratique : la valeur de retour de type void peut être utilisée pour mettre à jour les enregistrements de la base de données sans renvoyer aucune information.

Que signifie javascript:void(0) ? Quelles sont les solutions à ce problème ? Lorsque nous naviguons sur le Web, nous rencontrons parfois des liens qui ne répondent pas après avoir cliqué, mais qui s'affichent sous la forme "javascript:void(0)" dans la barre d'adresse du navigateur. Cette question peut dérouter certains visiteurs Web car ils ne savent pas ce que signifie le message d'erreur, qui ressemble littéralement à du code JavaScript. Alors, déballons cela ensemble
