1
2
3
4
5
6
7
8
9
10
11

PHP 5内置數組簡介

發(fā)布時間:2017-07-20 08:01   發(fā)布人:毛書朋   浏覽次數:6918


關聯課件: 6子項目六 - PHP 5内置數組簡介(點擊在線預覽)


6.3.1  PHP 5内置數組簡介

       PHP提供了一套附加的内置數組(也稱爲預定義數組或預定義變量),包含來自web服務器(如果可 用)、運行環境和用戶輸入的數據。這(zhè)些數組非常特别,它們在全局範圍内自動生效。因此通常被稱爲自動全局變量(autoglobals)或者超全局變量(superglobals)。(PHP中沒(méi)有用戶自定義超全局變量的機制。)超全局變量舊的預定義數組($HTTP_*_ VARS)同時存在。自PHP 5.0.0起(qǐ),長(cháng)格式的PHP預定義變量可以通過(guò)設置“register_long_ arrays = off”來屏蔽。超全局變量主要有以下幾個。

      1)$GLOBALS(Global變量)

      包含引用指向(xiàng)每個當前腳本的全局範圍内有效的變量,即爲由所有已定義全局變量組成(chéng)的數組。該數組的索引爲全局變量的變量名。

     2)$_SERVER(服務器變量)

     $_SERVER是一個包含諸如頭信息(header)、路徑(path)和腳本位置(script locations)的數組。數組的實體由web服務器創建。不能(néng)保證所有的服務器都(dōu)能(néng)産生所有的信息;服務器可能(néng)忽略了一些信息,這(zhè)與服務器的設定或者直接與當前腳本的執行環境相關聯。$SERVER類似于舊數組$HTTP_SERVER_VARS(依然有效,但不提倡繼續使用)。

     3)$_GET(HTTP GET變量)

     通過(guò)HTTP GET方法傳遞的變量組成(chéng)的數組,類似于舊數組$HTTP_GET_VARS(依然有效,但不提倡繼續使用)。

     4)$_POST(HTTP POST變量)

    通過(guò)HTTP POST方法傳遞的變量組成(chéng)的數組。類似于舊數組$HTTP_POST_VARS(依然有效,但不提倡繼續使用)。

     5)$_COOKIE(HTTP Cookies)

     通過(guò)HTTP cookies傳遞的變量組成(chéng)的數組。類似于舊數組$HTTP_COOKIE_VARS(依然有效,但不提倡繼續使用)。

     6)$_FILES(HTTP文件上傳變量)

     通過(guò)HTTP POST方法傳遞的已上傳文件項目組成(chéng)的數組,類似于舊數組$HTTP_ POST_FILES(依然有效,但不提倡繼續使用)。

     7)$_ENV(環境變量)

     從環境變量通過(guò)執行轉變過(guò)來的PHP全局變量。它們中的許多都(dōu)是由 PHP 所運行的系統決定,類似于舊數組$HTTP_ENV_VARS(依然有效,但不提倡繼續使用)。

      8)$_REQUEST(Request變量)

     經(jīng)由GET、POST和COOKIE機制提交至腳本的變量,關聯數組包含$_GET、$_POST 和$_COOKIE中的全部内容。該數組并不值得信任,建議盡量少用,甚至不用。所有包含在該數組中的變量的存在與否以及變量的順序均按照php.ini中的variables_order配置指示來定義。

     9)$_SESSION(Session變量)

     包含當前腳本中session變量的數組,類似于舊數組$HTTP_SESSION_VARS(依然有效,但不提倡繼續使用)。

    10)$php_errormsg(前一個錯誤消息)

     $php_errormsg是包含PHP産生的上一錯誤消息内容的變量。該變量在發(fā)生錯誤并且 將(jiāng)track_errors選項打開(kāi)(默認爲關閉)後(hòu)才有效。

下面(miàn)幾節就對(duì)常用的内置數組做詳細的講解。




  • 侯素玲 2018-01-07 09:10:26
    sort($arr,$mode)重要的排序數組函數 $mode模式爲: ①SORT_REGULAR,0,默認項,常規排序,按照ASCII排序,不改變類型。 ②SORT_NEMERIC,1,把每一項作爲數字來處理 ③SORT_STRING,2,把每一項作爲字符串來處理 ④SORT_LOCALE_STRING,3,把每一項作爲字符串來處理,基于當前區域設置(可通過(guò)setlocale()進(jìn)行更改) ⑤SORT_NATURAL,4,把每一項作爲字符串來處理,使用類似natsort()的自然排序 ⑥SORT_FLAG_CASE,5,可以結合(按位或)SORT_STRING或SORT_NATURAL對(duì)字符串進(jìn)行排序,不區分大小寫
  • 侯素玲 2018-01-07 09:11:37
    ksort($arr,$sort_flags)將(jiāng)數組按照鍵名升序排列,對(duì)應的krsort()按照鍵名降序排列
  • 侯素玲 2018-01-07 09:12:03
    asort($arr,$sort_flags)將(jiāng)數組按照值升序排列,asort()將(jiāng)數組按照值降序排列
  • 侯素玲 2018-01-07 09:12:39
    array_pop($arr)删除數組的最後(hòu)一個元素,返回删除的元素的值,對(duì)應的array_push(array &$array, $var, $_ =null)在數組$array末尾插入$var的值也可以插入多個值,返回爲$array新的個數.
  • 侯素玲 2018-01-07 09:13:20
    array_shift($arr)删除數組的第一個元素,返回删除的元素的值,對(duì)應的array_unshift(array &$array,$var,$_= null)在數組$array開(kāi)頭插入$var的值也可以插入多個值,返回爲$array新的個數.
  • 徐新如 2018-01-09 16:13:03
    在 PHP 中,有三種(zhǒng)數組類型: 索引數組 - 帶有數字索引的數組 關聯數組 - 帶有指定鍵的數組 多維數組 - 包含一個或多個數組的數組 對(duì)于任何的類型:整型、浮點、字符串、布爾和資源,如果將(jiāng)一個值轉換爲數組,將(jiāng)得到一個僅有一個元素的數組(其下标爲 0),該元素即爲此标量的值。 如果將(jiāng)一個對(duì)象轉換成(chéng)一個數組,所得到的數組的元素爲該對(duì)象的屬性(成(chéng)員變量),其鍵名爲成(chéng)員變量名。 如果將(jiāng)一個 NULL 值轉換成(chéng)數組,將(jiāng)得到一個空數組。
  • 李文傑 2018-01-09 16:45:12
    講的有條有理
  • 潘龍飛 2018-01-09 17:36:02
    講的很好(hǎo),