中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP中extract()函數的作用是什么

發布時間:2021-06-30 16:36:55 來源:億速云 閱讀:255 作者:Leah 欄目:編程語言

這篇文章給大家介紹PHP中extract()函數的作用是什么,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

PHP中extract()函數有哪些用處

  在action.php中只要使用extract()函數將$_POST全局數據解開:

  action.php

  extract($_POST);

  //相當于$username=$_POST['username'];

  //$password=$_POST['password'];

  ?>

  是不是很方便呢?呵呵,下面是PHP手冊里的詳細解釋:

  extract

  (PHP4,PHP5)

  extract—從數組中將變量導入到當前的符號表

  說明

  intextract(array$var_array[,int$extract_type[,string$prefix]])

  本函數用來將變量從數組中導入到當前的符號表中。接受結合數組var_array作為參數并將鍵名當作變量名,值作為變量的值。對每個鍵/值對都會在當前的符號表中建立變量,并受到extract_type和prefix參數的影響。

  Note:自版本4.0.5起本函數返回被提取的變量數目。

  Note:EXTR_IF_EXISTS和EXTR_PREFIX_IF_EXISTS是版本4.2.0中引進的。

  Note:EXTR_REFS是版本4.3.0中引進的。

  PHP中extract()函數有哪些用處

  extract()檢查每個鍵名看是否可以作為一個合法的變量名,同時也檢查和符號表中已有的變量名的沖突。對待非法/數字和沖突的鍵名的方法將根據extract_type參數決定。可以是以下值之一:

  EXTR_OVERWRITE

  如果有沖突,覆蓋已有的變量。

  EXTR_SKIP

  如果有沖突,不覆蓋已有的變量。

  EXTR_PREFIX_SAME

  如果有沖突,在變量名前加上前綴prefix。

  EXTR_PREFIX_ALL

  給所有變量名加上前綴prefix。自PHP4.0.5起這也包括了對數字索引的處理。

  EXTR_PREFIX_INVALID

  僅在非法/數字的變量名前加上前綴prefix。本標記是PHP4.0.5新加的。

  EXTR_IF_EXISTS

  僅在當前符號表中已有同名變量時,覆蓋它們的值。其它的都不處理。可以用在已經定義了一組合法的變量,然后要從一個數組例如$_REQUEST中提取值覆蓋這些變量的場合。本標記是PHP4.2.0新加的。

  EXTR_PREFIX_IF_EXISTS

  僅在當前符號表中已有同名變量時,建立附加了前綴的變量名,其它的都不處理。本標記是PHP4.2.0新加的。

  EXTR_REFS

  將變量作為引用提取。這有力地表明了導入的變量仍然引用了var_array參數的值。可以單獨使用這個標志或者在extract_type中用OR與其它任何標志結合使用。本標記是PHP4.3.0新加的。

  如果沒有指定extract_type,則被假定為EXTR_OVERWRITE。

  注意prefix僅在extract_type的值是EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID或EXTR_PREFIX_IF_EXISTS時需要。如果附加了前綴后的結果不是合法的變量名,將不會導入到符號表中。前綴和數組鍵名之間會自動加上一個下劃線。

  extract()返回成功導入到符號表中的變量數目。

  Warning

  不要對不能信任的數據使用extract(),例如用戶的輸入($_GET,…)。如果這樣做,舉例說,要臨時運行依賴于register_globals的老代碼,要確保使用不會覆蓋的extract_type值,例如EXTR_SKIP,并且要留意應該按照php.ini中由variables_order定義的順序來提取。

  extract()的一種可能用法是將wddx_deserialize()返回的結合數組中的內容導入到符號表變量中去。

  Example#1extract()例子

  /*假定$var_array是wddx_deserialize返回的數組*/

  $size=“large”;

  $var_array=array(”color”=>“blue”,

  “size”=>“medium”,

  “shape”=>“sphere”);

  extract($var_array,EXTR_PREFIX_SAME,“wddx”);

  echo“$color,$size,$shape,$wddx_size\n”;

  ?>

  上例將輸出:

  blue,large,sphere,medium

  $size沒有被覆蓋,因為指定了EXTR_PREFIX_SAME,這使得$wddx_size被建立。如果指定了EXTR_SKIP,則$wddx_size也不會被建立。EXTR_OVERWRITE將使$size的值為“medium”,EXTR_PREFIX_ALL將建立新變量$wddx_color,$wddx_size和$wddx_shape。

  必須使用關聯數組,數字索引的數組將不會產生結果,除非用了EXTR_PREFIX_ALL或者EXTR_PREFIX_INVALID。

關于PHP中extract()函數的作用是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南召县| 开远市| 新平| 镇坪县| 班戈县| 中江县| 三门峡市| 兴安县| 天峻县| 南汇区| 龙陵县| 清丰县| 大悟县| 庆城县| 吴江市| 海南省| 沙雅县| 河西区| 章丘市| 岳普湖县| 翼城县| 鄂托克前旗| 兴化市| 许昌县| 金堂县| 冷水江市| 台山市| 新丰县| 肇州县| 鸡东县| 贡山| 中牟县| 庆元县| 乌鲁木齐市| 阿拉善左旗| 长垣县| 平乡县| 丰顺县| 林口县| 炉霍县| 视频|