php api질문
본문
홈페이지 메인에 api자료를 올릴려고 하는데 샘플 코드로
/* PHP 샘플 코드 */
$ch = curl_init();
$url = 'http://data.ekape.or.kr/openapi-data/service/user/grade/auct/beefGrade'; /*URL*/
$queryParams = '?' . urlencode('ServiceKey') . '=서비스키'; /*Service Key*/
$queryParams .= '&' . urlencode('startYmd') . '=' . urlencode('20160120'); /**/
$queryParams .= '&' . urlencode('endYmd') . '=' . urlencode('20160120'); /**/
$queryParams .= '&' . urlencode('abattCd') . '=' . urlencode('0302'); /**/
$queryParams .= '&' . urlencode('sexCd') . '=' . urlencode('1'); /**/
$queryParams .= '&' . urlencode('serviceKey') . '=' . urlencode('인증키 (URL- Encode)'); /**/
curl_setopt($ch, CURLOPT_URL, $url . $queryParams);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
이렇게 받았습니다. 근데 원하는 데이터만 나오는게 아니라 전부 다 나오는거 같아서
항목명(국문) | 항목명(영문) | 항목크기 | 항목구분 | 샘플데이터 | 항목설명 |
---|---|---|---|---|---|
결과코드 | resultCode | 2 | 필수 | 00 | 결과코드 |
결과메시지 | resultMsg | 100 | 필수 | OK | 결과메시지 |
등급코드 | gradeCode | 10 | 필수 | E | 등급코드 |
등급명 | gradeName | 10 | 필수 | 등외등급 | 등급명 |
전체(소계) 가격 | totPrice | 10 | 옵션 | 3,920 | 전체(소계) 가격 |
전체(소계) 두수 | totCnt | 10 | 옵션 | 46 | 전체(소계) 두수 |
전체(암) 가격 | tot1Price | 10 | 옵션 | 4,338 | 전체(암) 가격 |
전체(암) 두수 | tot1Cnt | 10 | 옵션 | 21 | 전체(암) 두수 |
전체(수) 가격 | tot2Price | 10 | 옵션 | 3,165 | 전체(수) 가격 |
전체(수) 두수 | tot2Cnt | 10 | 옵션 | 11 | 전체(수) 두수 |
원하는 데이터만 받으려면 어떻게 해야할까요ㅠㅠ
예를들어 전체(암)가격을 받고싶으면 tot1price를 어떻게 적어야 하는걸까요ㅠㅠ
답변 3
$xml = simplexml_load_string($response);
echo $xml->body->tot1Price;
$queryParams .= '&' . 항목명. '=' . urlencode('전체(암) 가격'); /**/
이런식으로 검색 조건에 항목명을 하나 더 필터하면 될 거 같습니다.
서비스키 쪽지나 댓글로 보내주세요