HTTP 요청은 두 부분으로 구성됩니다. 머리글과 본문 집합입니다.
헤더에는 요청되는 URL 및 캐싱 제어 도우미와 같은 항목이 포함됩니다 (예 : "어제의 버전이 있습니다. 변경 사항이있을 경우 새 것을 제공하십시오.").
요청 유형에 따라 본문이 나타나거나 나타나지 않을 수 있습니다. POST 요청에는 본문이 있습니다.
본문은 클라이언트가 좋아하는 형식이 될 수 있습니다. 헤더 중 하나가 서버에 형식이 무엇인지 알려줍니다.
HTML 양식에 사용되는 몇 가지 형식이 있으며 PHP는이를 구문 분석하고 $ _POST에 데이터를 저장하는 방법을 알고 있습니다.
데이터가 JSON과 같은 다른 형식이거나 데이터가 PHP 이름과 일치하지 않는 규칙 (예 : 동일한 이름의 키 끝에 []가있는 규칙)을 준수하는 경우 직접 데이터에 액세스하여 직접 구문 분석 할 수 있습니다. 원시 POST 데이터입니다.
$_POST
는 URL 인코딩 (응용 프로그램/www가 URL 인코딩) 스크립트에 게시 및 PHP는 당신을 위해 그들을 디코딩되는 변수가 포함되어 있습니다. HTML FORM 데이터를 다룰 때이 코드를 사용합니다.
file_get_contents("php://input")
- API는 API를 작성하고 PHP가 $ _POST로 디코딩 할 수없는 XML/JSON/... 입력이 필요할 때 이것을 사용해야합니다.
$HTTP_RAW_POST_DATA
- 이론적으로 위와 동일하지만 php.ini에 따라 다릅니다.더 이상 사용할 수
[TFM] (http://php.net/manual/en/reserved.variables.httprawpostdata.php)은 매우 명확하게 말합니다. –