- Zend Framework 教程
- Zend Framework - 首頁
- Zend Framework - 簡介
- Zend Framework - 安裝
- 框架應用
- Zend Framework - MVC 架構
- Zend Framework - 概念
- Zend Framework - 服務管理器
- Zend Framework - 事件管理器
- Zend Framework - 模組系統
- 應用結構
- Zend Framework - 建立模組
- Zend Framework - 控制器
- Zend Framework - 路由
- Zend Framework - 檢視層
- Zend Framework - 佈局
- 模型與資料庫
- 不同的資料庫
- 表單與驗證
- Zend Framework - 檔案上傳
- Zend Framework - Ajax
- Cookie 管理
- 會話管理
- Zend Framework - 身份驗證
- 郵件管理
- Zend Framework - 單元測試
- Zend Framework - 錯誤處理
- Zend Framework - 工作示例
- Zend Framework 有用資源
- Zend Framework - 快速指南
- Zend Framework - 有用資源
- Zend Framework - 討論
Zend Framework - Cookie 管理
Cookie 在 Web 應用中是一個非常重要的概念。它提供了一個選項,可以在瀏覽器中持久儲存使用者資料,通常是一小段資訊,並且僅儲存有限的時間。
Cookie 用於維護 Web 應用的狀態。Zend Framework 在 **zend-http** 元件中提供了一個 Cookie 模組。這個 zend-http 提供了 HTTP 抽象及其實現。
安裝 HTTP 元件
可以使用下面的程式碼中指定的 **Composer** 輕鬆安裝 HTTP 元件。
composer require zendframework/zend-http
概念
zend-http 提供了 **Zend\Http\Cookies** 類來管理 Cookie。它與 **Zend\Http\Client** 類一起使用,後者用於向 Web 伺服器傳送請求。Cookie 可以像下面程式碼中所示那樣初始化:
use Zend\Http\Cookies $c = new Cookies();
當 HTTP 客戶端 (Zend\Http\Client) 首次向 Web 伺服器傳送 URI 請求時,它沒有任何 Cookie。一旦 Web 伺服器收到請求,它會在其響應物件中包含 Cookie 作為 **HTTP 頭部,Set-Cookie** 並將其傳送到 HTTP 客戶端。HTTP 客戶端將從 HTTP 響應中提取 Cookie,並在後續請求中將其作為相同的 HTTP 頭部重新發送。通常,每個 Cookie 將對映到一個域和該域的路徑。
**Cookies** 類中可用的方法如下:
**addCookie(uri)** - 用於將 Cookie 新增到給定 URI 的請求物件中。
**getCookie(cookieName, $cookieForm)** - 用於獲取給定 URI **$uri** 中可用的 Cookie,$cookieName。第三個引數是 Cookie 的返回方式,字串或陣列。
**fromResponse(uri)** - 用於從給定 URI 的響應物件中提取 Cookie。
**addCookiesFromResponse** - 與 fromResponse 相同,但它會再次提取並將 Cookie 新增到給定 URI 的請求物件中。
**isEmpty()** - 用於查詢給定的 **Cookie** 物件是否包含任何 Cookie。
**reset()** - 用於清除給定 URI 中的所有 Cookie。
在下一章中,我們將討論 Zend Framework 中的會話管理。