鍍金池/ 教程/ PHP/ 創(chuàng)建 Web 應(yīng)用程序
使用數(shù)組
使用數(shù)值
cookie 和 session
數(shù)據(jù)庫(kù)介紹
總結(jié)
使用字符串
創(chuàng)建函數(shù)
變量
文件和目錄
控制結(jié)構(gòu)
HTML 表單和 PHP
PHP 概述
創(chuàng)建 Web 應(yīng)用程序

創(chuàng)建 Web 應(yīng)用程序

創(chuàng)建模板

在復(fù)雜的 Web 站點(diǎn)中,有一些特性會(huì)在站點(diǎn)的每個(gè)頁(yè)面都用到,我們就可以將這些元素放在一個(gè)獨(dú)立的頁(yè)面。

創(chuàng)建模板可以將重復(fù)的內(nèi)容和特定的頁(yè)面的素材分開

比如:WP 中分為 header,sidebar footer 等模塊

使用外部文件

  • include 包含文件 如果 include 失敗,PHP 會(huì)繼續(xù)運(yùn)行
  • require 包含文件 如果 require 失敗,PHP 會(huì)終止腳本執(zhí)行

include ("test.html"); 或者 include "test.html";

使用常量

  • define() 函數(shù)定義并賦值常量

define ('CONSTANT_NAME',value) 常量名需全部大寫

常量的引用很簡(jiǎn)單,直接 print CONSTANT_NAME 但是在單引號(hào)和雙引號(hào)里面的常量就無(wú)法打印

  • defined() 函數(shù) 如果提交的常量已經(jīng)定義,返回 TRUE

使用日期和時(shí)間

  • date 返回格式化的日期和時(shí)間
  • time 返回當(dāng)前時(shí)刻的時(shí)間戳
  • mktime 返回給定時(shí)間和日期的時(shí)間戳
  • date_default_timezone_set 設(shè)置時(shí)區(qū)

輸出緩沖

某些函數(shù),只能在沒(méi)有任何東西被發(fā)送到瀏覽器之前調(diào)用,比如 header(),setcookie() 和 session_start(),如果在 Web 瀏覽器已經(jīng)收到了一些文本、HTML或哪怕是一個(gè)空格之后, 調(diào)用這些函數(shù),就會(huì)得到一個(gè)惱人的 HTTP 頭已發(fā)送錯(cuò)誤消息,這個(gè)時(shí)候采用輸出緩沖可以解決這個(gè)問(wèn)題

利用輸出緩沖, HTML 和打印的數(shù)據(jù)將被放到緩沖中。當(dāng)腳本執(zhí)行結(jié)束后,緩沖將被發(fā)送到 Web 瀏覽器,或者如果需要的話,緩沖可以清空而不發(fā)送到 Web 瀏覽器

啟用輸出緩沖: 在頁(yè)面頂端使用 ob_start 函數(shù),在結(jié)尾調(diào)用 ob_end_flush 函數(shù)會(huì)將緩沖發(fā)送到 Web 服務(wù)器,調(diào)用 ob_end_clean 函數(shù)會(huì)刪除緩沖的數(shù)據(jù)而不進(jìn)行傳輸

緩沖區(qū)的大小可以在 php.ini 文件中設(shè)置,默認(rèn)值為 4096 字節(jié)

  • ob_get_length 返回緩沖內(nèi)容長(zhǎng)度
  • ob_get_contents 返回緩沖區(qū)內(nèi)容
  • ob_flush 將當(dāng)前緩沖區(qū)內(nèi)容發(fā)送到 Web 瀏覽器并刷新緩沖區(qū)
  • ob_clean 刪除緩沖區(qū)的當(dāng)前內(nèi)容

處理 HTTP 頭

Web 服務(wù)器通常需要用其他方式與客戶端通信,這些通信需要用 HTTP 頭實(shí)現(xiàn)

下面介紹用 header 函數(shù)重定向頁(yè)面:

使用 PHP 重定向?yàn)g覽器,需要發(fā)送一個(gè) location 頭:

header("Location: page.php") 通常后面會(huì)跟 exit(); 取消當(dāng)前腳本執(zhí)行

上一篇:cookie 和 session下一篇:PHP 概述