코인 거래소(암호화폐) API 와 snoopy 클래스를 이용하여 코인별 최근 거래 가격과 거래량 표 만들기

안녕하세요.
오늘은 거래소에서 제공하는 api 를 가지고 최근가격과 거래량을 표로 만들어 보겠습니다.
사용 할 거래소 API 는 빗썸으로 하겠습니다.
 
다른 거래소의 API 주소를 원하시면 아래 포스팅을 참고하세요!
 
최종 결과물은 이렇게...  허접하지만 목표는 디자인이 아니기 때문에ㅠㅠ
 

 

 
우선 지난시간에 했던 내용에 이어서 코딩을 하겠습니다. 
 
 

※ 지난 시간에 했던 내용 중 상단 내용만 그대로 가져다 쓰겠습니다. 

// 스누피 인클루드 (경로 주의 하세요)
include_once './insert/Snoopy.class.php';
// 스누피 객체 생성
$snoopy = new snoopy;
// fetch를 이용하여 스누피 객체에 빗썸 API의 모든 내용 담기
$snoopy -> fetch("https://api.bithumb.com/public/ticker/all");
// 담은 값을 $result 객체에 담기
$result = $snoopy->results;

 

 

위의 내용에 추가로 해야 할 작업은 $result 객체에 담겨있는 api 전체 내용 중 필요한 가격 부분과 거래량 부분을 추출 해야 하는 부분입니다.

 

먼저 빗썸 API 링크로 들어 가보시면 아래처럼 BTC 부터 EOS 까지 최근 거래내역을 보실 수 있습니다.

(그 중 BTC 만 예시로 가져왔습니다.)

"BTC":{"opening_price":"11502000","closing_price":"11240000","min_price":"10950000","max_price":"11565000","average_price":"11306739.6560","units_traded":"6984.75602934","volume_1day":"6984.75602934","volume_7day":"72123.92432754","buy_price":"11231000","sell_price":"11254000"}

 

위의 내용 중 표로 만들 최근가격(closing_price), 하루 거래량(volume_1day) 에 해당하는 내용을 가져오겠습니다.

 

 

추출 하기 위해서 preg_match_all 이라는 php 함수를 사용 하였습니다.

// $price 변수에 closing_price 와 "main_price 사이의 가격을 반복으로 담기 
preg_match_all("|closing_price\":\"(.*)\",\"min_price\"|U", $result, $price, PREG_SET_ORDER);
// $volume 변수에 volume_1day 와 "volume_7day 사이의 가격을 반복으로 담기 
preg_match_all("|volume_1day\":\"(.*)\",\"volume_7day\"|U", $result, $volume, PREG_SET_ORDER);


 

1. closing_price에 해당하는 숫자값 을 가지고 오기 위해선 앞뒤 단어를 알아야 합니다.

ex) "closing_price":"11240000","min_price"

 

11240000 가격만 추출 하기 위해서 preg_match_all 함수 안에 (.*) 앞뒤로 "closing_price":" 와 ","min_price" 를 넣었습니다.

 

※ (.*) 값은 앞단어와 뒷단어 사이의 모든 값 이라는 표현입니다.

  함수 안의 따옴표(") 앞에 \ 표시는 따옴표를 특수문자로 사용하기 위함입니다.

 

 

위와 같이 적용하면 $price 변수에는 closing_price 의 값이, $volume 변수에는 volume_1day 의 값이 2차 배열로 들어가게 됩니다.

$price 변수와 $volume 변수를 출력을 해보면 아래와 같이 나옵니다.

 

echo '$price[0][0] : '.$price[0][0];
echo '$price[0][1] : '.$price[0][1];

 

↓ 출력화면

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

 

$price[0][0] 배열에는 앞뒤 단어 포함 되어 들어가고, $price[0][1] 배열에는 앞뒤 단어 제거 후 금액 값만 들어가는 것을 확인 하실 수 있습니다.

 

 

저희가 원하는 값은 앞뒤 단어가 없어야 하기 때문에 $price[0][1] 를 사용하여 표를 만들도록 하겠습니다.

 

preg_match_all 이라는 함수는 설정해 둔 값이 반복 된다면 배열에 계속 들어가게 되어있습니다.

그러므로 $price[0][1] 값은 BTC 최근가격, $price[1][1] 에는 이더리움 최근가격 ..... 해서 $price[11][1] 에는 EOS 까지 총 12개가 들어있습니다.

 

 

 

그럼 $price[0][1] 배열을 반복문을 사용하여 값을 출력 해 보겠습니다.

// 증가하는 변수 $int 생성
$int = 0;
// $price 배열의 갯수보다 적은만큼만 반복
while($int < count($price)){
	// 출력
	echo $price[$int][1];
	// 출력 후 $int 값 1 증가
	$int++;
}

↓ 출력화면

 

잘 나오고 있습니다. 그럼 마지막으로 $price 와 $volume 값으로 표를 만들어 보도록 하겠습니다. (HTML table 을 사용하여 나타내었습니다.)

 

// 증가하는 변수 $int 생성
$int = 0;
// 코인명 $coin 배열에 저장(순서에 맞게)
$coin = array('BTC', 'ETH', 'DASH', 'LTC', 'ETC', 'XRP', 'BCH', 'XMR', 'ZEC', 'QTUM', 'BTG', 'EOS');

// 테이블 생성(HTML)
echo "";
// $price 배열의 갯수보다 적은만큼만 반복
while($int < count($price)){
	// 출력
	echo "";
	// 출력 후 $int 값 1 증가
	$int++;
}
// 테이블 종료
echo "
coin price volume
".$coin[$int]." ".$price[$int][1]." ".$volume[$int][1]."

";

 

 

↓ 최종 출력화면

 

 

 

[출처] https://hatpub.tistory.com/40?category=988325

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
70 [profit] 돈 버는 재미 머니랩 사고 칠 기업, 이거 보면 안다…횡령 감지할 ‘1장짜리 예언서’ file 졸리운_곰 2023.05.05 172
69 [profit] 재산 300억대 슈퍼리치들… MBTI 봤더니 가장 많았던 ‘이 유형’ file 졸리운_곰 2023.04.09 191
68 [profit] “주식은 미인대회” 명언 남긴 케인즈 두번 파산한 이유 file 졸리운_곰 2023.02.12 158
67 [profit] 유튜브 VS 블로그 성공방정식 3가지 file 졸리운_곰 2022.12.31 169
66 [profit][時事] 주식 투자로 전 재산 90% 날린 뉴턴이 남긴 말 file 졸리운_곰 2022.11.06 236
65 [profit] 돈의 역설… 일본서 연봉 꼴찌 이 도시, 행복도는 1위였다 [왕개미연구소] file 졸리운_곰 2022.09.23 251
64 [코인투자][비트코인] “어제의 코인 피해자, 오늘은 사기꾼과 한패 돼 있더라” [사모당] file 졸리운_곰 2022.06.28 205
63 [profit][은퇴자금 보전] 인생 2막 팔자 고치려면… 명심합시다 ‘8자’ file 졸리운_곰 2022.02.22 201
62 [profit][NFT GAME] 디파이 킹덤(DeFi Kingdoms) 파헤치기 file 졸리운_곰 2022.02.20 162
61 [profit] ‘조삼모사’ 원숭이 비웃는 분들, 한번 읽어보시라 file 졸리운_곰 2021.11.26 207
60 [profit, 수익] 1100조원이 사라졌다, 가상화폐 시총 2주일새 42% 증발 file 졸리운_곰 2021.05.23 205
59 CBDC 등장때 비트코인 운명은...“디지털 휴지조각”vs“더 널리 쓰일 것” file 졸리운_곰 2021.03.28 148
58 [금권에 달려드는 좀비떼들] 나무기술, 삼성전자에 10억원 규모 공급 계약 체결 file 졸리운_곰 2021.03.07 162
57 [기획특집, 돈만 보고 달려드는 똘아이 특집] 기지개 켠 국내 PaaS 시장, 핵심은 ‘쿠버네티스’ [1] file 졸리운_곰 2021.03.07 203
56 “전기료 그까짓 것” PC방은 지금 가상화폐 채굴 중 file 졸리운_곰 2021.02.20 231
55 “역사에 길이남을 붕괴 온다” 세계 큰손들 증시 과열 경고 file 졸리운_곰 2021.01.11 257
54 [인터넷 마케팅] 구매를 폭증시키는, 상품페이지 제작 방법 7가지 file 졸리운_곰 2020.06.18 161
53 월급 200만원인데 투잡으로 월 2000만원을 버는 방법 12가지 file 졸리운_곰 2020.06.10 250
52 [블로그] 스타 블로거가 되는 7가지 방법 file 졸리운_곰 2019.12.18 158
» 코인 거래소(암호화폐) API 와 snoopy 클래스를 이용하여 코인별 최근 거래 가격과 거래량 표 만들기 file 졸리운_곰 2019.05.18 182
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED