>백엔드 개발 >PHP 튜토리얼 >为毛获取不到$GLOBALS["HTTP_RAW_POST_DATA"]?

为毛获取不到$GLOBALS["HTTP_RAW_POST_DATA"]?

WBOY
WBOY원래의
2016-06-20 12:33:051058검색

$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];dump($postStr);$postStr2 = file_get_contents("php://input");dump($postStr2);

为毛第一种情况输出为null,第二个可以输出,却貌似不是我要的。
之前没用过第一种,所以不知道第一种输出的结果是什么样的,也是和$_POST一模一样的一维数组么?


回复讨论(解决方案)

$GLOBALS['HTTP_RAW_POST_DATA'] :总是产生 $HTTP_RAW_POST_DATA 变量包含有原始的 POST 数据。此变量仅在碰到未识别 MIME 类型的数据时产生。$HTTP_RAW_POST_DATA 对于 enctype="multipart/form-data" 表单数据不可用。
也就是说基本上$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST是一样的。
但是如果post过来的数据不是PHP能够识别的,你可以用 $GLOBALS['HTTP_RAW_POST_DATA']来接收,比如 text/xml 或者 soap 等等

明白了     

楼主明白什么了

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.