HTTP POST request에 배열 값 보내는 방법(php에서 받기)

프로그래밍/서버2020. 1. 13. 21:52

http request로 데이터를 서버에 보내는 것은 아주 흔합니다.

보통은 배열이 아닌 값들을 여러개 보내는데 배열을 보내는 방법이 궁금해져서 찾아보고 테스트한 결과 정리합니다.

 

어려울 것이라고 생각했는데 아주 간단합니다.

 

Postman에서 작성한 request입니다.

Body쪽에 보내고자 하는 데이터의 키와 값을 넣어서 보내면 됩니다.

 

일반적인 경우라면 Key에 "itemId", Value에 "111"과 같이 값을 채워서 보냅니다.

배열을 보내는 경우라면 끝에 배열을 의미하는 []를 추가하면 됩니다. 위 사진을 참고해주세요.

키를 보면 동일한 이름의 itemIdArray[]가 3개 있습니다.

 

*혹시라도.. 맥 Swift로 Alamofire를 이용해서 코드를 작성하시는 분들은.. 아래와 같이 parameters를 사용해야 합니다.

dictionary이기 때문에.. 키는 1개만 가지며 []가 없습니다...

let parameters: Parameters = ["itemIdArray": ["111", "222", "333"]]

 

 

 

 

php쪽에서 수신확인 하는 코드는 아래와 같습니다.

아주 간단합니다.

php에서 배열로 전달된 POST 데이터를 받으면 일반 배열과 똑같이 그냥 사용할 수 있습니다.

<?php
$itemIdArray=isset($_POST['itemIdArray']) ? $_POST['itemIdArray'] : '';

echo '$itemIdArray[0] = ' . $itemIdArray[0] . '<br>';
echo '$itemIdArray[1] = ' . $itemIdArray[1] . '<br>';
echo '$itemIdArray[2] = ' . $itemIdArray[2] . '<br>';

echo 'count($itemIdArray) = ' . count($itemIdArray) . '<br>';
?>

 

결과값은 아래와 같습니다.

$itemIdArray[0] = 111
$itemIdArray[1] = 222
$itemIdArray[2] = 333
count($itemIdArray) = 3

 

아주 간단하죠? ㅎㅎ

 

작성자

Posted by 드리머즈

관련 글

댓글 영역