테스트 사이트 - 개발 중인 베타 버전입니다

php curl 질문드립니다. 채택완료

안뇽하세용 3년 전 조회 1,637

curl 통신을 할때 호출하는 쪽에서 

$ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, url);
        curl_setopt($ch, CURLOPT_HTTPHEADER, Array("Content-Type:text/xml", "charset:UTF-8"));
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $request_body);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
        curl_setopt($ch, CURLOPT_TIMEOUT, 60);
        $result = curl_exec($ch);

이런식으로 데이터를 넘겨줬을때

1. url 호출되는쪽에서 CURLOPT_POSTFIELDS의 데이터를 받는법은 어떤것인가요?

지금은 file_get_contents('php://input'); 로 받고있는데 이방법뿐이 없는것인가요? post일때

 

2. curl_exec 한후 result의 값을 담을때 함수와달리 url 호출되는쪽에서 echo나 print_r 등으로 데이터를 넘겨주는 방법뿐이 없나요? 다른 넘길수 있는 방법이 있나요?

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
3년 전

1. post로 넘기는데 post로 받으면 되죠

   일반 폼에서 post로 submit하는 것과 같습니다 ==> print_r($_POST);

 

2. echo든 뭐든 출력을 해야 값을 넘겨 줍니다

    다른 방법이란 것이 무슨 방법을 말하는지 모르겠네요

    json 형식으로 만들어도 echo $jsondata; 처럼 echo를 해야 전달이 됩니다

 

 

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

안뇽하세용
3년 전
함수는 return으로 값을 반환하여 주는데 여기서 crul로 특정 함수를 실행해도
여기서는 출력값이 반환된다는 것이지요? return값이 아니라
레전드플랫폼
3년 전
curl 이 해당 URL로 접속해서 해당 URL의 내용을 받아옵니다. 물론 header 부분과 body 부분이 있을거구요. 보통은 그중의 body 부분을 사용합니다. body부분에 뭔가를 보내려고 하면 php에서 echo 를 사용합니다. 또는 출력을 하는 printf 등 여러가지가 있지만 보통은 echo 를 사용하죠.
균이
3년 전
그렇습니다 return값을 주는 방법이 그냥 화면에 출력하는 형식 입니다

댓글을 작성하려면 로그인이 필요합니다.

echo $result;

로 결과물을 봐야 어떤 값으로 넘겨줄지 가닥이 나옵니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

안뇽하세용
3년 전
함수는 return으로 값을 반환하여 주는데 여기서 crul로 특정 함수를 실행해도
여기서는 출력값이 반환된다는 것이지요? return값이 아니라

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인