方法1、最常見的方法是:$_post["fieldname"];
說明:只能接收content-type:application/x-www-form-urlencoded提交的資料
解釋:也就是表單post過來的資料
方法2、file_get_contents("php://input");
說明:
允許讀取post的原始資料。
和$http_raw_post_data比起來,它給記憶體帶來的壓力較小,並且不需要任何特殊的php.ini設定。
php://input不能用於enctype="multipart/form-data"。
解釋:
對於未指定content-type的post資料,則可以使用file_get_contents(“php://input”);來獲取原始資料。
事實上,用php接收post的任何資料都可以使用本方法。而不用考慮content-type,包括二進位制檔案流也可以。
所以用方法二是最保險的方法
方法3、$globals["http_raw_post_data"];
總是產生$http_raw_post_data變數包含有原始的post資料。
此變數僅在碰到未識別mime型別的資料時產生。
$http_raw_post_data對於enctype="multipart/form-data"表單資料不可用
如果post過來的資料不是php能夠識別的,可以用$globals["http_raw_post_data"]來接收,
比如text/xml或者soap等等
$globals["http_raw_post_data"]存放的是post過來的原始資料。
$_post或$_request存放的是php以key=>value的形式格式化以後的資料。
但$globals["http_raw_post_data"]中是否儲存post過來的資料取決於centent-type的設定,即post資料時必須顯式示指明content-type:application/x-www-form-urlencoded,post的資料才會存放到$globals["http_raw_post_data"]中
方法1、最常見的方法是:$_post["fieldname"];
說明:只能接收content-type:application/x-www-form-urlencoded提交的資料
解釋:也就是表單post過來的資料
方法2、file_get_contents("php://input");
說明:
允許讀取post的原始資料。
和$http_raw_post_data比起來,它給記憶體帶來的壓力較小,並且不需要任何特殊的php.ini設定。
php://input不能用於enctype="multipart/form-data"。
解釋:
對於未指定content-type的post資料,則可以使用file_get_contents(“php://input”);來獲取原始資料。
事實上,用php接收post的任何資料都可以使用本方法。而不用考慮content-type,包括二進位制檔案流也可以。
所以用方法二是最保險的方法
方法3、$globals["http_raw_post_data"];
說明:
總是產生$http_raw_post_data變數包含有原始的post資料。
此變數僅在碰到未識別mime型別的資料時產生。
$http_raw_post_data對於enctype="multipart/form-data"表單資料不可用
如果post過來的資料不是php能夠識別的,可以用$globals["http_raw_post_data"]來接收,
比如text/xml或者soap等等
解釋:
$globals["http_raw_post_data"]存放的是post過來的原始資料。
$_post或$_request存放的是php以key=>value的形式格式化以後的資料。
但$globals["http_raw_post_data"]中是否儲存post過來的資料取決於centent-type的設定,即post資料時必須顯式示指明content-type:application/x-www-form-urlencoded,post的資料才會存放到$globals["http_raw_post_data"]中