麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 編程 > PHP > 正文

PHP中的超級(jí)全局變量是什么?如何使用?

2020-03-22 20:02:48
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
在PHP中預(yù)定義了一些數(shù)組變量,這些變量可以隨時(shí)在腳本中的任何位置訪問(wèn),它們被稱(chēng)之為超級(jí)html' target='_blank'>全局變量。本篇文章就來(lái)帶大家認(rèn)識(shí)一下這些超級(jí)全局變量,簡(jiǎn)單了解一下這些變量的用法,希望對(duì)大家有所幫助。【視頻教程推薦:PHP教程】

什么是超級(jí)全局(Superglobals)變量?

超級(jí)全局變量是PHP中內(nèi)置的、特別定義的數(shù)組變量。它們可以隨時(shí)在腳本中的任何位置使用超級(jí)全局變量來(lái)訪問(wèn)信息。即,不管作用域是什么,都可以輕松獲取有關(guān)請(qǐng)求或其上下文的信息。

超級(jí)全局變量可以從任何函數(shù)、類(lèi)或任何文件訪問(wèn),而無(wú)需執(zhí)行任何特殊任務(wù),如聲明任何全局變量等。它們主要會(huì)用于存儲(chǔ)和獲取應(yīng)用程序中從一個(gè)頁(yè)面到另一個(gè)頁(yè)面等的信息。

下面是PHP中可用的超全局變量列表:

● $ GLOBALS

● $ _ SERVER

● $ _REQUEST

● $ _GET

● $ _ POST

● $ _SESSION

● $ _COOKIE

● $ _FILES

● $ _ENV

接下來(lái)我們來(lái)詳細(xì)介紹一下其中的一些超級(jí)全局變量。

$ GLOBALS

$ GLOBALS是一個(gè)超全局變量,它存儲(chǔ)腳本中聲明的所有變量,可用于訪問(wèn)腳本中任何位置的任何變量。

PHP將所有全局變量存儲(chǔ)在數(shù)組$ GLOBALS []中,這個(gè)數(shù)組有一個(gè)索引,用于保存全局變量名稱(chēng),可以使用該名稱(chēng)進(jìn)行訪問(wèn)。

下面我們就來(lái)看看如何使用$ GLOBALS:

 ?php $x = 300; $y = 200; function multiplication(){  $GLOBALS[ z ] = $GLOBALS[ x ] * $GLOBALS[ y multiplication(); echo $z; ? 

在上面的代碼中,聲明了兩個(gè)全局變量$ x和$ y,并賦值300和200。然后定義函數(shù)multiplication()以將$ x和$ y值的相乘并存儲(chǔ)在GLOBAL數(shù)組中定義的另一個(gè)變量$ z中。

我們知道變量$ x和$ y不會(huì)在函數(shù)multiplication()中被訪問(wèn),因?yàn)樗鼈兾丛谄渲新暶鳎坏覀兛梢酝ㄟ^(guò)使用$ GLOBALS數(shù)組變量訪問(wèn)它來(lái)實(shí)現(xiàn)。

當(dāng)調(diào)用函數(shù)square()時(shí),就會(huì)執(zhí)行變量$ x和$ y值的相乘;然后可以直接顯示。

獲得的相乘結(jié)果,因?yàn)樽兞?z也存在于$ GLOBALS數(shù)組變量中。

輸出:

2.jpg

$ _SERVER

$ _SERVER是一個(gè)PHP超級(jí)全局變量,用于存儲(chǔ)有關(guān)標(biāo)題(標(biāo)頭),路徑和腳本位置的信息,即它存儲(chǔ)有關(guān)Web及其請(qǐng)求的信息。其中的一些元素用于從超全局變量$ _SERVER獲取信息。

$ _SERVER變量中使用了許多信息元素。其中一些列表如下:

元件描述$ _ SERVER [ PHP_SELF ] 返回當(dāng)前正在執(zhí)行的腳本的文件名。 $ _ SERVER [ SERVER_ADDR ]返回主機(jī)服務(wù)器IP地址。 $ _ SERVER [ SERVER_NAME ] 返回主機(jī)服務(wù)器的名稱(chēng)。 $ _ SERVER [ QUERY_STRING ] 如果通過(guò)查詢(xún)字符串訪問(wèn)頁(yè)面,則返回查詢(xún)字符串。 $ _ SERVER [ REQUEST_TIME ] 返回請(qǐng)求開(kāi)始的時(shí)間戳。

下面我們就來(lái)看看如何使用$ _SERVER:

 ?php echo $_SERVER[ PHP_SELF echo br echo $_SERVER[ SERVER_NAME echo br echo $_SERVER[ HTTP_HOST echo br echo $_SERVER[ HTTP_USER_AGENT echo br echo $_SERVER[ SCRIPT_NAME echo br ? 

輸出:

3.jpg

在上面的代碼中,我們使用$ _SERVER元素來(lái)獲取一些信息。我們使用 PHP_SELF 元素獲取當(dāng)前處理的文件名,使用 SERVER_NAME 元素獲取當(dāng)前使用的服務(wù)器名稱(chēng),通過(guò) HTTP_HOST 獲取主機(jī)名。

$ _REQUEST

$ _REQUEST是一個(gè)超全局變量,用于在提交HTML表單后收集數(shù)據(jù)。$ _REQUEST主要不使用,因?yàn)? _POST和$ _GET執(zhí)行相同的任務(wù)并被廣泛使用。

注:$ _REQUEST可能導(dǎo)致安全風(fēng)險(xiǎn)。

下面我們就來(lái)看看如何使用$ _REQUEST:

 !DOCTYPE html  html  head  meta charset= UTF-8  /head  body  div >

效果圖:

1.gif

在上面的代碼中,我們創(chuàng)建了一個(gè)表單,該表單將用戶(hù)名作為輸入,并在單擊提交按鈕時(shí)輸出顯示其名稱(chēng)。我們使用action屬性中指定的$ _SERVER [ PHP_SELF ]元素將表單中接受的數(shù)據(jù)傳輸?shù)酵豁?yè)面,因?yàn)槲覀兪褂肞HP代碼操作同一頁(yè)面中的數(shù)據(jù)。使用$ _REQUEST超全局?jǐn)?shù)組變量檢索數(shù)據(jù)。

$ _POST

$ _POST是一個(gè)超級(jí)全局變量,用于在提交數(shù)據(jù)后從HTML表單收集數(shù)據(jù),當(dāng)用于傳輸數(shù)據(jù)的方法是“POST”時(shí)。

當(dāng)表單使用方法post傳輸數(shù)據(jù)時(shí),數(shù)據(jù)在查詢(xún)字符串中不可見(jiàn),即在此方法中保持安全級(jí)別。

下面我們就來(lái)看看如何使用$ _POST:

 !DOCTYPE html  html  head  meta charset= UTF-8  /head  body  div >

在上面的代碼中,我們創(chuàng)建了一個(gè)表單,該表單接受用戶(hù)的名稱(chēng)和年齡,并在提交數(shù)據(jù)時(shí)使用$ _POST超級(jí)全局變量訪問(wèn)數(shù)據(jù)。

由于每個(gè)超全局變量都是一個(gè)數(shù)組,因此它可以存儲(chǔ)多個(gè)值。因此,我們從$ _POST變量中檢索名稱(chēng)和年齡,并將它們存儲(chǔ)在$ nm和$ age變量中。

效果圖:

4.jpg

$ _GET

$ _GET是一個(gè)超級(jí)全局變量,用于在提交數(shù)據(jù)后從HTML表單中收集數(shù)據(jù)。當(dāng)表單使用“GET”方法獲取傳輸數(shù)據(jù)時(shí),數(shù)據(jù)在查詢(xún)字符串中可見(jiàn),因此不隱藏值。$ _GET超級(jí)全局?jǐn)?shù)組變量存儲(chǔ)URL中的值。

下面我們就來(lái)看看如何使用$ _GET:

 !DOCTYPE html  html  head  title /title  /head  body bgcolor= cyan  !--demonstration of $_GET--  h1 font color= red Historic Monument /font /h1  a href= picture.php?name=QutubMinar city=Delhi img src= qutubminar.jpg alt= Qutubminar height= 200 width= 200 / /a  /body  /html 

我們實(shí)際上只看到了一半的邏輯,讓我們理解上面的代碼,然后看看其余的邏輯。

在上面的代碼中,我們創(chuàng)建了一個(gè)QutubMinar的超鏈接圖像,它將把我們帶到picture.php頁(yè)面,并帶有參數(shù)名稱(chēng)=“QutubMinar”和city =“Delhi”。

也就是說(shuō),當(dāng)我們點(diǎn)擊QutubMinar的小圖片時(shí),我們將帶到下一頁(yè)picture.php以及參數(shù)。

由于默認(rèn)方法是get,因此這些參數(shù)將使用get方法傳遞到下一頁(yè),它們將在地址欄中顯示。

當(dāng)我們想要將值傳遞給地址時(shí),使用問(wèn)號(hào)(?)將它們附加到地址。

然后將參數(shù)寫(xiě)為問(wèn)號(hào)(?)后面的鍵值對(duì),如以下語(yǔ)句中所指定:

 a href= picture.php?name=QutubMinar city=Delhi img src= qutubminar.jpg alt= Qutubminar height= 200 width= 200 / /a 

這里的參數(shù)name = QutubMinar會(huì)附加到地址。

如果我們想要添加更多值,我們可以在每個(gè)鍵值對(duì)之后使用&符號(hào)(&)添加它們,類(lèi)似于在name參數(shù)之后使用&符號(hào)添加city = Delhi。

現(xiàn)在,在點(diǎn)擊QutubMinar的圖像之后,我們希望顯示picture.php頁(yè)面,并顯示參數(shù)值。

所以讓我們?cè)趐icture.php頁(yè)面中為它編寫(xiě)代碼。

 head  title QutubMinar /title  /head  body bgcolor= cyan  ?php $nm=$_GET[ name  $city=$_GET[ city  echo h1 nbsp; nbsp; nbsp; nbsp; nbsp; nbsp; nbsp;this is .$nm. of .$city. /h1 br br  img src= qutubminar.jpg alt= QutubMinar height= 400 width= 500 /  /body  /html 

在這里,我們使用超全局?jǐn)?shù)組變量$ _GET接收參數(shù)name和city的值,并分別存儲(chǔ)在變量$ nm和$ city中。

然后使用echo語(yǔ)句顯示它們。

QutubMinar的放大圖像如下所示。

首先讓我們看一下index.php頁(yè)面運(yùn)行時(shí)的輸出。

5.jpg

現(xiàn)在,當(dāng)我們點(diǎn)擊QutubMinar的超鏈接圖像時(shí),我們得到以下輸出:

1550047422538840.jpg

$ _SESSION

$ _SESSION是一個(gè)預(yù)定義的超全局?jǐn)?shù)組變量,用于記住用戶(hù)的狀態(tài)以及他想要在整個(gè)會(huì)話(huà)中檢索的值。

以前,對(duì)服務(wù)器的每個(gè)請(qǐng)求都是單獨(dú)的請(qǐng)求。HTML是一種無(wú)狀態(tài)協(xié)議。這意味著它無(wú)法記住網(wǎng)站中用戶(hù)訪問(wèn)的頁(yè)面。但今天我們使用網(wǎng)站,用戶(hù)可以讓網(wǎng)站記住訪問(wèn)過(guò)的網(wǎng)頁(yè)或之前做過(guò)的事情,例如購(gòu)物網(wǎng)站。

會(huì)話(huà)(SESSION)的設(shè)計(jì)原因與此相同;會(huì)話(huà)可以記住用戶(hù)登錄到注銷(xiāo)期間的所有操作。

$ _SESSION數(shù)組變量用于存儲(chǔ)來(lái)自任何頁(yè)面的值,并在任何其他頁(yè)面中檢索它們,而不在URL中傳遞它們。

在存儲(chǔ)任何變量之前,使用session_start()聲明啟動(dòng)會(huì)話(huà)。

$ _COOKIE

$ _COOKIE是一個(gè)超級(jí)全局?jǐn)?shù)組變量,用于檢索cookie的值。

Cookie是由服務(wù)器創(chuàng)建的用于標(biāo)識(shí)用戶(hù)的小文件。每當(dāng)用戶(hù)在互聯(lián)網(wǎng)上請(qǐng)求某些信息時(shí),該請(qǐng)求就會(huì)發(fā)送到服務(wù)器。如果用戶(hù)第一次連接到該服務(wù)器,則服務(wù)器識(shí)別他的信息并創(chuàng)建具有給用戶(hù)的標(biāo)識(shí)號(hào)的小文件,并將其附加到發(fā)送給用戶(hù)的響應(yīng)并存儲(chǔ)在用戶(hù)的計(jì)算機(jī)中。

在此之后,每當(dāng)用戶(hù)向該服務(wù)器發(fā)送請(qǐng)求時(shí),它都攜帶cookie文件,由此服務(wù)器發(fā)送響應(yīng)而不再檢查服務(wù)器認(rèn)證。

$ _FILES

$ _FILES是一個(gè)超級(jí)全局?jǐn)?shù)組變量,用于將上載文件的信息提供給服務(wù)器。我們可以檢查上傳的文件是否已成功上傳;也可以使用$ _FILES變量檢索文件的詳細(xì)信息。

$ _ENV

$ _ENV有助于從Web服務(wù)器獲取/訪問(wèn)環(huán)境變量

PHP中的環(huán)境變量是允許腳本從服務(wù)器動(dòng)態(tài)獲取某些信息的變量。它支持在不斷變化的服務(wù)器環(huán)境中的腳本靈活性。

使用$ _ENV訪問(wèn)任何環(huán)境變量的語(yǔ)法如下:

$_ENV[“variable_name”];

例如,我們可以訪問(wèn)temp_pwd變量,如下所示:

 ?php echo “Temporary Password: ”.$_ENV[“temp_pwd”];? 

總結(jié):

在這些超級(jí)全局?jǐn)?shù)組變量中,變量$ _GET,$ _POST,$ _ SERVER,$ _SESSION被最多使用。$ _REQUEST變量可以執(zhí)行$ _GET,$ _POST和$ _COOKIE的工作,但需要避免使用它,因?yàn)樗赡軐?dǎo)致安全問(wèn)題。

以上就是本篇文章的全部?jī)?nèi)容,希望能對(duì)大家的學(xué)習(xí)有所幫助。更多精彩內(nèi)容大家可以關(guān)注php 相關(guān)教程欄目!!!

以上就是PHP中的超級(jí)全局變量是什么?如何使用?的詳細(xì)內(nèi)容,PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 天天鲁在线视频免费观看 | 午夜色视频在线观看 | 午夜精品福利视频 | 久久人人爽人人爽人人片av高清 | 久久精品亚洲欧美日韩精品中文字幕 | 亚洲精品午夜国产va久久成人 | 国产精品久久久久av | 91网视频在线观看 | 一级裸体视频 | 久久91久久久久麻豆精品 | 色综合久久久久久久久久久 | 午夜伦情电午夜伦情电影 | 9丨九色丨国产 | 国产88久久久国产精品免费二区 | 操操操日日日干干干 | 国产一区二区二 | 日韩美香港a一级毛片 | 国产女厕一区二区三区在线视 | 亚洲视频观看 | 免费看毛片的网站 | 精品一区二区久久久 | free japan xxxxhdsex69| 国产午夜精品久久久久 | 中文在线日韩 | 轻点插视频| 国产中文99视频在线观看 | 自拍偷拍亚洲图片 | 中国女警察一级毛片视频 | 欧美一级α | 国产午夜电影在线观看 | 中文字幕一区二区三区久久 | 久久综合艹 | 国产1区2| 99国产精品欲a | 日韩精品中文字幕在线播放 | 国产91九色 | 日韩视频一区二区在线观看 | 久久毛片免费 | 香蕉成人在线观看 | 性欧美极品xxxx欧美一区二区 | www.91sao|