PHP中$_GET $_POST $_REQUEST區(qū)別介紹_PHP教程
推薦:php中靜態(tài)類與靜態(tài)變量用法的區(qū)別分析static是定義一個(gè)靜態(tài)對(duì)象或靜態(tài)變量,關(guān)于static 定義的變量或類方法有什么特性我們看完本文章的相關(guān)實(shí)例后就見(jiàn)分曉了. 1. 創(chuàng)建對(duì)象$object = new Class(),然后使用-調(diào)用:$object-attribute/function,前提是該變量/方法可訪問(wèn). 2. 直接調(diào)用類方法/變量:class::attri
PHP中有$_REQUEST與$_POST、$_GET用于接受表單數(shù)據(jù)。
一、$_REQUEST與$_POST、$_GET的區(qū)別和特點(diǎn)
$_REQUEST[]具用$_POST[] $_GET[]的功能,但是$_REQUEST[]比較慢。通過(guò)POST和GET方法提交的所有數(shù)據(jù)都可以通過(guò)$_REQUEST數(shù)組獲得。
二、$_POST、$_GET的區(qū)別和特點(diǎn)
1. GET是從服務(wù)器上獲取數(shù)據(jù),POST是向服務(wù)器傳送數(shù)據(jù)。
2. GET是把參數(shù)數(shù)據(jù)隊(duì)列加到提交表單的ACTION屬性所指的URL中,值和表單內(nèi)各個(gè)字段一一對(duì)應(yīng),在URL中可以看到。POST是通過(guò)HTTP POST機(jī)制,將表單內(nèi)各個(gè)字段與其內(nèi)容放置在HTML HEADER內(nèi)一起傳送到ACTION屬性所指的URL地址。用戶看不到這個(gè)過(guò)程。
3. 對(duì)于GET方式提交表單數(shù)據(jù),服務(wù)器端用$_GET[‘name’]獲取變量的值,對(duì)于POST方式提交表單數(shù)據(jù),服務(wù)器端用$_POST[‘name’]獲取提交的數(shù)據(jù),當(dāng)然,兩者都可以通過(guò)$_REQUEST[‘name’]獲得表單數(shù)據(jù)。對(duì)于REQUEST方式提交表單數(shù)據(jù),服務(wù)器端用$_REQUEST[‘name’]獲取變量的值,但這種方式很少用。
4. GET傳送的數(shù)據(jù)量較小,不能大于2KB。POST傳送的數(shù)據(jù)量較大,一般被默認(rèn)為不受限制。但理論上,一般認(rèn)為不能超過(guò)100KB。
5. GET安全性非常低,POST安全性較高。
6. GET表單值可以通過(guò)_GET獲取;但通過(guò)action的url設(shè)置的參數(shù)總是獲取不到的,<form method="get" action="a.asp?b=b">跟<form method="get"action="a.asp">是一樣的,也就是說(shuō),在這種情況下,GET方式會(huì)忽略action頁(yè)面后邊帶的參數(shù)列表。POST表單值可以通過(guò)_POST獲��;但通過(guò)action的url參數(shù)設(shè)置的參數(shù)則可以不能通過(guò)_POST獲取到。action=test.php?id=1這種就是GET方式傳值,可以用$_REQUEST和$_GET接受傳值,但不能用POST方式獲取到值,即使表單是POST方式提交。所在,在提交表單時(shí),如果action中同時(shí)有參數(shù),最好只能通過(guò)POST表單方式,對(duì)于表單內(nèi)數(shù)據(jù),直接通過(guò)POST獲取,對(duì)于action中參數(shù),童工GET獲取。
在做數(shù)據(jù)查詢時(shí),建議用GET方式,而在做數(shù)據(jù)添加、修改或刪除時(shí),建議用POST方式。
request是先讀取 get再讀post 的, 同時(shí)存在, 即覆蓋掉前面的變量。
經(jīng)典實(shí)例:
<?php
echo "get\n";
print_r($_GET);
echo "post\n";
print_r($_POST);
echo "request\n";
print_r($_REQUEST);
?>
< form method=post action='?a=1&b=2'>
< input type=text name=a value='a'>
< input type=text name=b value='b'>
< input type=submit value=test>
< /form>
輸出結(jié)果:
get:
Array
(
[a] => 1
[b] => 2
)
post:
Array
(
[a] => a
[b] => b
)
request:
Array
(
[a] => a
[b] => b
)
其實(shí),在php配置文件php.ini中有一個(gè)設(shè)置項(xiàng):variables_order = "GPCS" ,GPCS分別是GET,POST,Cookie,Server的首字母縮寫,variables_order = "GPCS"含義是php文件中變量的解析順序是GET,POST,Cookie和Server。
分享:PHP全排列算法實(shí)現(xiàn)程序代碼從n個(gè)不同元素中任取m(mn)個(gè)元素,按照一定的順序排列起來(lái),叫做從n個(gè)不同元素中取出m個(gè)元素的一個(gè)排列。當(dāng)m=n時(shí)所有的排列情況叫全排列。 簡(jiǎn)介 如1,2,3三個(gè)元素的全排列為: 1,2,3 1,3,2 2,1,3 2,3,1 3,1,2 3,2,1 共3*2*1=6種 3! 2公式 全排列數(shù)f(n)=n!(定義0!=1) 遞
- php中靜態(tài)類與靜態(tài)變量用法的區(qū)別分析
- PHP全排列算法實(shí)現(xiàn)程序代碼
- php頁(yè)面緩存方法小結(jié)
- php查詢mssql出現(xiàn)亂碼的解決方法
- PHP的包含文件函數(shù)require和include路徑總結(jié)
- php獲取QQ頭像并顯示的方法
- php將textarea數(shù)據(jù)提交到mysql出現(xiàn)很多空格的解決方法
- PHP程序員必須清楚的問(wèn)題匯總
- php驗(yàn)證用戶名是否以字母開(kāi)頭與驗(yàn)證密碼實(shí)例
- php中正則替換函數(shù)ereg_replace用法實(shí)例
- php中如何制定輕量級(jí)的MVC標(biāo)準(zhǔn)
- PHP圖像操作教程:3D圖、縮放、旋轉(zhuǎn)、裁剪、添加水印
- 相關(guān)鏈接:
- 教程說(shuō)明:
PHP教程-PHP中$_GET $_POST $_REQUEST區(qū)別介紹
。