初探語法資料型態變數與常數環境變數運算元流程控制引用檔案函數物件
PHP 簡介

外部變數

 除了在程式中自行指定變數之外,PHP 也可以透過 form 的 GET/POST、cookie、外加參數的方式,或是從環境變數中取得外來的變數值。
 自 PHP 4.2.0 起,為了強化系統安全,在 php.ini 裡頭的 register_globals 選項被預設為 off;如此一來,外部變數的讀取將更為嚴謹。在 register_globals 設為 on 時,我們只要在變數名稱前方加上 $ 符號,即可取用變數的值;但現在要改用 $_xxxx['變數名稱'] 的方式才行,xxxx 所指的包括 GET、POST、COOKIE、FILES、REQUEST、SESSION、SERVER 與 ENV。
 例如,我們要讀取一個以 GET 方式傳入的外部變數,請用 $_GET['變數名稱'];要讀取一個 cookie 的值,請用 $_COOKIE['變數名稱'];要讀取一個 session 變數的值,請用 $_SESSION['變數名稱']。

Form 的 GET/POST
 請參閱「表單處理」一章。

Cookie
 Cookie 是由 web server 給予瀏覽器的一小段訊息。瀏覽器將來自不同網站的 cookie 分別存成一個個的純文字檔(text)。此後每當瀏覽器向同一部 web server 要求網頁時,就會將此訊息傳送回去給伺服器。
 Cookie 的主要目的是辨識使用者,並儘可能地為他們準備個人化的網頁。當您進入一個使用 cookies 的網站時,您可能會被要求輸入一些個人資訊。這些資訊會被包裝起來,並存放在您的硬碟之中以便日後使用。當你下次進入相同的網站時,你的瀏覽器就會傳送這個 cookie 給 web server,伺服器即可利用這些資訊呈現個人化的網頁。例如,您上一次在該網站的瀏覽進度。
 當瀏覽器向 web server 提出讀取網頁的需求後,會先收到一小段資訊字串(header),隨後才是網頁內容。Cookie 是 header 的一部份,所以在用 setcookie( ) 設定之前,不可以有任何的網頁內容輸出,否則將產生錯誤。

外加參數
 我們可以將變數以參數的型式直接定在 URL 後面,例如:
 http://search.yam.com/wps?k=php&p=1
 使用時需注意以下原則:
  • 程式之路徑、名稱與變數資料之間以「?」分隔
  • 變數值的指定方式為:變數名稱 = 值。變數名稱前不必加上「$」
  • 需傳遞多個變數時,變數資料之間要用「&」隔開
  • 特殊字元(中文)需經十六進位編碼處理,方能傳遞
  • 程式之路徑、名稱與變數資料之總長度需控制在 2083 個字元之內

環境變數
 請參閱「環境變數」一節。

初探語法資料型態變數與常數環境變數運算元流程控制引用檔案函數物件