phone_type($phone); return $params; } public function add($card_no, $card_type, $amount, $params) { $params = $this->req_params($card_no, $amount, $params['order_sn']); $sign = $this->sign($params); $params['sign'] = $sign; $resp = http_request(config::ORDER_URL, $params , 'POST' , false , config::ExtHeaders); if ($resp === false) { return [false, '系统错误']; } else { Log::record($resp, Log::DEBUG); $resp = json_decode($resp, true); if ($resp['code'] == 1) { return [true, $resp['data']]; } else { return [false, $resp['msg']]; } } } public function query($refill_info) { $params['partner_order_no'] = $refill_info['order_sn']; $params['partner_id'] = config::PARTNER_ID; $content = $params['partner_id'] . $params['partner_order_no'] . config::KEY; $params['sign'] = md5($content); $resp = http_post_data(config::QUERY_URL, json_encode($params)); if ($resp === false) { return [false, '系统错误']; } else { Log::record($resp, Log::DEBUG); $resp = json_decode($resp, true); if (in_array($resp['code'] , [0,1,2])) { } else { return [false, $resp['msg']]; } } } private function sign($params) { $key = config::KEY; $content = $params['partner_id'] . $params['partner_order_no'] . $params['phone'] . $params['amount'] . $params['notify_url'] . $key; return md5($content); } private function phone_type($phone) { $card_type = mtopcard\card_type($phone); if ($card_type == mtopcard\ChinaMobileCard) { return 2; } elseif ($card_type == mtopcard\ChinaUnicomCard) { return 0; } elseif ($card_type == mtopcard\ChinaTelecomCard) { return 1; } } }