Kakaopay curl php 테스트

$reqData = array();
$urlStr =“https://kapi.kakao.com/v1/payment/ready”;
$page ="/v1/payment/ready";
// $headers = array( “POST “.$page.” HTTP/1.1”, “Content-type: application/x-www-form-urlencoded;charset=utf-8”, “Authorization: KakaoAK {key}”);
$headers = array( “POST “.$page.” HTTP/1.1”, “Content-type: application/json;charset=utf-8”, “Authorization: KakaoAK {key}”);

$data=array(
“cid”=>“C000000000000”,
“partner_order_id”=>time(),
“partner_user_id”=>“userid”,
“item_name”=>“productname”,
“item_code”=>“T000001”,
“quantity”=>“1”,
“total_amount”=>“1000”,
“tax_free_amount”=>“1000”,
“approval_url”=>urlencode(“http://domain.co.kr”),
“cancel_url”=>urlencode(“http://domain.co.kr”),
“fail_url”=>urlencode(“http://domain.co.kr”));

	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $urlStr);			#접속할 URL 주소
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);	#인증서 체크같은데 true 시 안되는 경우가 많다.
	curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
	curl_setopt($ch, CURLOPT_HEADER, 0);			# 헤더 출력 여부
	curl_setopt($ch, CURLOPT_POST, 1);				# Post Get 접속 여부
	curl_setopt($ch, CURLOPT_POSTFIELDS, $data);	# Post 값 Get 방식처럼적는다.
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);	# 결과값을 받을것인지
	$result = curl_exec($ch);
	echo $result;

result : {“msg”:“cid can’t be null.”,“code”:-2}
이렇게 출력 되네요… 어디부터 점검을 해야 할지 몰라서 문의 드립니다.

@anon25872885

$headers 값에 "POST … 1.1"은 필요 없고요,
$headers에 연관 배열(associative array) 표기를 => 로 바꿔보세요.