程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP中extract的妙用

PHP中extract的妙用

編輯:PHP綜合
extract --  從數組中將變量導入到當前的符號表

說明
int extract ( array var_array [, int extract_type [, string prefix]] )
extract() 檢查每個鍵名看是否可以作為一個合法的變量名,同時也檢查和符號表中已有的變量名的沖突。對待非法/數字和沖突的鍵名的方法將根據 extract_type 參數決定。可以是以下值之一:
EXTR_OVERWRITE
如果有沖突,覆蓋已有的變量。
EXTR_SKIP
如果有沖突,不覆蓋已有的變量。
EXTR_PREFIX_SAME
如果有沖突,在變量名前加上前綴 prefix。
EXTR_PREFIX_ALL
給所有變量名加上前綴 prefix。自 PHP 4.0.5 起這也包括了對數字索引的處理。
EXTR_PREFIX_INVALID
僅在非法/數字的變量名前加上前綴 prefix。本標記是 PHP 4.0.5 新加的。
EXTR_IF_EXISTS
僅在當前符號表中已有同名變量時,覆蓋它們的值。其它的都不處理。可以用在已經定義了一組合法的變量,然後要從一個數組例如 $_REQUEST 中提取值覆蓋這些變量的場合。本標記是 PHP 4.2.0 新加的。
EXTR_PREFIX_IF_EXISTS
僅在當前符號表中已有同名變量時,建立附加了前綴的變量名,其它的都不處理。本標記是 PHP 4.2.0 新加的。
EXTR_REFS
將變量作為引用提取。這有力地表明了導入的變量仍然引用了 var_array 參數的值。可以單獨使用這個標志或者在 extract_type 中用 OR 與其它任何標志結合使用。本標記是 PHP 4.3.0 新加的。
如果沒有指定 extract_type,則被假定為 EXTR_OVERWRITE。
注意 prefix 僅在 extract_type 的值是 EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID 或 EXTR_PREFIX_IF_EXISTS 時需要。如果附加了前綴後的結果不是合法的變量名,將不會導入到符號表中。


在獲取表單的時候可以使用他,方便快捷。
extract($_GET);//$_GET['name'] $_GET['age']
//將會的到變量   $name   $age

同理$_POST也可以
extract($_POST);

但要注意的是extract前或後面相同變量名會被覆蓋的問題,那麼你就使用加上使用前綴參數EXTR_PREFIX_SAME

例如:
extract($_GET,EXTR_PREFIX_SAME,"get");//$_GET['name']  $_GET['age']
//結果:   $get_name,$get_age

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved