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

RestAPI json 출력문의 채택완료

phpers 4년 전 조회 4,820

유플러스 회신목록을 출력하려는데,

 

</p>

<p><?php</p>

<p> </p>

<p>$curl = curl_init();</p>

<p> </p>

<p>curl_setopt_array($curl, array(</p>

<p>  CURLOPT_URL => '<a href="https://centrex.uplus.co.kr/RestApi/getinboundcall?id=070**111111&pass=ff0385459ce2ccc762a7e4484d4c2b716&page=1&num_per_page=30'," target="_blank" rel="noopener noreferrer">https://centrex.uplus.co.kr/RestApi/getinboundcall?id=070**111111&pass=ff0385459ce2ccc762a7e4484d4c2b716&page=1&num_per_page=30',</a></p>

<p>  CURLOPT_RETURNTRANSFER => true,</p>

<p>  CURLOPT_CUSTOMREQUEST => 'POST',</p>

<p>  CURLOPT_FOLLOWLOCATION => true,</p>

<p>  CURLOPT_HTTPHEADER => array(</p>

<p>    'Content-Type: application/json; charset=UTF-8',</p>

<p>    'Cookie: PHPSESSID=af1cb0b8694a36ff'</p>

<p>  ),</p>

<p>));</p>

<p> </p>

<p>$response = curl_exec($curl);</p>

<p>$err = curl_error($curl);</p>

<p> </p>

<p>curl_close($curl);</p>

<p> </p>

<p>if ($err) {</p>

<p>  echo "cURL Error #:" . $err;</p>

<p>} else {</p>

<p>  echo $response;</p>

<p>?></p>

<p>

 

위와같은 php 코드로 REST API를 호출하여 아래와 같은 응답을 받았습니다.

아래 응답 중 DATAS의 정보만을 테이블에 foreach를 돌려서 38개의 데이터를 출력하려고 하는데,

잘안되서 문의를 드려봅니다. 도움 부탁드립니다. 

{

    "SVC_RT": "0000",

    "SVC_MSG": "OK",

    "LISTINFO": {

        "page": 1,

        "numperpage": 10,

        "total": "38"

    },

    "DATAS": [

        {

            "NO": 1,

            "TIME": "2021-03-02 16:00:58",

            "SRC": "010**111111",

            "DST": "070**111111",

            "DURATION": "55",

            "STATUS": "FAILED",

            "CHANNEL": "833b2",

            "DSTCHANNEL": "200-0001",

            "ENDTIME": "2021-03-02 16:01:53",

            "APPDATA": "204"

        },

        {

            "NO": 2,

            "TIME": "2021-03-02 16:00:58",

            "SRC": "010**111111",

            "DST": "070**111111",

            "DURATION": "55",

            "STATUS": "FAILED",

            "CHANNEL": "833b2",

            "DSTCHANNEL": "200-0001",

            "ENDTIME": "2021-03-02 16:01:53",

            "APPDATA": "204"

 

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

답변 2개

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

$response 변수에 JSON 문자열이 담겼으니 

PHP array로 만든 후(json_decode()) 출력하시면 되겠습니다

echo $response; 대신 넣으세요 

 

</p>

<p>// echo $response;

$arr = json_decode($response, true);

// var_dump($arr);

if (isset($arr['DATAS']) && is_array($arr['DATAS'])) {

    foreach ($arr['DATAS'] as $data) {

        echo 'NO: '.$data['NO'].' ';

        echo 'TIME: '.$data['TIME'].' ';

        echo '
';

    }

}</p>

<p>

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

답변에 대한 댓글 1개

B
Big1
4년 전
다 하신 것 같은데...
무엇때문에 "잘 안되"시는지 궁금합니다

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

phpers
4년 전

ㅠ decode까지하고, 공부하면서 코딩을 하다보니

마지막 정렬해서 출력하는부분 코딩을 못해서 뻘짓하고 있었습니다.

깔끔하게 정렬되어 데이터가 나오네요. 테이블에만 집어넣으면 됩니다.

도움 감사드립니다.

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

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

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

로그인