위토즈 - 개발자프로그램판매공간

정보공유

[PHP] PHP 로 HTTP raw post data 를 처리하는 방법

 

php://input은 raw POST 데이터를 읽을수 있는 권한을 허용한다. $HTTP_RAW_POST_DATA에 대한 메모리 집적에 대한 차선책이고, 특별한 php.ini 디렉티브 설정이 필요치 않다. php://input은 enctype="multipart/form-data"에 사용할 수 없습니다. 

 

만약에 body의 데이터가 json 이거나 PHP가 해석할 수 없는 형태더라도 직접 접근해야만 하는 경우가 있을 수 있습니다. 이때 사용되는 변수가 $HTTP_RAW_POST_DATA 인데 이 변수는 PHP 5.6 부터 Deprecated 이기 때문에 사용하면 안됩니다.

 

그래서 아래와 같이 HTTP body의 raw data를 읽기 전용으로 가져올 수 있습니다.

 

$raw_post_data = file_get_contents('php://input');
$raw_post_array = explode('&', $raw_post_data);
$myPost = array();
foreach ($raw_post_array as $keyval) {
  $keyval = explode ('=', $keyval);
  if (count($keyval) == 2)
    $myPost[$keyval[0]] = urldecode($keyval[1]);
}

 

만약 $HTTP_RAW_POST_DATA 는 사용해야 한다면 php.ini 의 always_populate_raw_post_data 를 TRUE 로 변경하면 가능하지만, 사용하지 않는 것이 잠재적으로 메모리를 절약할 수 있는 방안이 될 수 있습니다.

 

 

정보공유
Total 437건 8 페이지
번호 제목 글쓴이 날짜 조회
332 폼 유효성 검사 js 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 05-09 37479
331 IE9 이전 버전에서 Canvas 사용가능하도록 하는 js 라이브러리 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 05-22 37416
330 영카트에서 io_type 의 정체 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-29 37365
329 네이버 Maps Javascript API V3 - 클릭한 지점에 마커 찍고 정보 레이어로 보여주기. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10-26 37357
328 PHP 코드최적화 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-20 37232
327 영카트, 그누보드 모바일화면에서 viewport 처리. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12-26 37214
열람중 PHP 로 HTTP raw post data 를 처리하는 방법 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-18 37163
325 영카트로 몰인몰 제작시 체크포인트. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 03-17 37151
324 엑셀 다운로드 할때 깨질경우. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10-28 36964
323 그누보드4 상세페이지에서 modifier is deprecated 오류 발생 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 05-01 36938
322 메뉴 슬라이드 다운 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-01 36701
321 스마트 에디터 사용할경우 첨부이미지 등록시 상대경로 URL 로 저장되게 하기. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 03-30 36596
320 CSS Reset 플러그인. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-07 36563
319 git 으로 push 하기. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 03-25 36518
318 KG이니시스와 통신 오류로 결제등록 요청을 완료하지 못했습니다. 위토즈쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 01-17 36470