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

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

創(chuàng)建模板

在復(fù)雜的 Web 站點中,有一些特性會在站點的每個頁面都用到,我們就可以將這些元素放在一個獨立的頁面。

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

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

使用外部文件

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

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

使用常量

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

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

常量的引用很簡單,直接 print CONSTANT_NAME 但是在單引號和雙引號里面的常量就無法打印

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

使用日期和時間

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

輸出緩沖

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

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

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

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

  • ob_get_length 返回緩沖內(nèi)容長度
  • 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 頭實現(xiàn)

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

使用 PHP 重定向瀏覽器,需要發(fā)送一個 location 頭:

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

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