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

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

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 포인트

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

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

 

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

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

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

 

 

 

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

답변에 대한 댓글 3개

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

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

echo $result;

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

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

답변에 대한 댓글 1개

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

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

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

로그인

전체 질문 목록