?php //微信支付 * 適用于微信所有支付, 掃碼支付 小程序支付 二維碼的需要接入生成二維碼的代碼,這個(gè)可以共用* xml 根據(jù)文檔自行刪改, 共用微信統(tǒng)一下單dome html' target='_blank'>class Payapi 統(tǒng)一下單 public function Pay($orderid,$total_fee){ 參數(shù)是訂單號 加金額, 可以改動(dòng), $fee = $total_fee;//舉例充值0.01 $appid = //如果是公眾號 就是公眾號的appid $body = 名字 $mch_id = 商戶號 $nonce_str = $this- nonce_str();//隨機(jī)字符串 $notify_url = 回調(diào)地址 $out_trade_no = $orderid;//商戶訂單號 $spbill_create_ip = 主機(jī)ip $total_fee = $fee*100;//因?yàn)槌渲到痤~最小是1 而且單位為分 如果是充值1元所以這里需要*100 $trade_type = NATIVE //交易類型 默認(rèn)
//這里是按照順序的 因?yàn)橄旅娴暮灻前凑枕樞?排序錯(cuò)誤 肯定出錯(cuò) $post[ appid ] = $appid; $post[ body ] = $body; $post[ mch_id ] = $mch_id; $post[ nonce_str ] = $nonce_str;//隨機(jī)字符串 $post[ notify_url ] = $notify_url; // $post[ openid ] = $openid; $post[ out_trade_no ] = $out_trade_no; $post[ spbill_create_ip ] = $spbill_create_ip;//終端的ip $post[ total_fee ] = $total_fee;//總金額 最低為一塊錢 必須是整數(shù) $post[ trade_type ] = $trade_type; $sign = $this- sign($post);//簽名 $post_xml = xml appid .$appid. /appid body .$body. /body mch_id .$mch_id. /mch_id nonce_str .$nonce_str. /nonce_str notify_url .$notify_url. /notify_url openid .$openid. /openid out_trade_no .$out_trade_no. /out_trade_no spbill_create_ip .$spbill_create_ip. /spbill_create_ip total_fee .$total_fee. /total_fee trade_type .$trade_type. /trade_type sign .$sign. /sign /xml //統(tǒng)一接口prepay_id $url = https://api.mch.weixin.qq.com/pay/unifiedorder $xml = $this- http_request($url,$post_xml); $array = $this- xml($xml);//全要大寫 if($array[ RETURN_CODE ] == SUCCESS $array[ RESULT_CODE ] == SUCCESS ){ $time = time(); $tmp= //臨時(shí)數(shù)組用于簽名 $tmp[ appId ] = $appid; $tmp[ nonceStr ] = $nonce_str; $tmp[ package ] = prepay_id= .$array[ PREPAY_ID $tmp[ signType ] = MD5 $tmp[ timeStamp ] = $time $data[ state ] = 1; $data[ timeStamp ] = $time //時(shí)間戳 $data[ nonceStr ] = $nonce_str;//隨機(jī)字符串 $data[ signType ] = MD5 //簽名算法,暫支持 MD5 $data[ package ] = prepay_id= .$array[ PREPAY_ID //統(tǒng)一下單接口返回的 prepay_id 參數(shù)值,提交格式如:prepay_id=* $data[ paySign ] = $this- sign($tmp);//簽名,具體簽名方案參見微信公眾號支付幫助文檔; $data[ out_trade_no ] = $out_trade_no; $data[ CODE_URL ] =$array[ CODE_URL }else{ $data[ state ] = 0; $data[ text ] = 錯(cuò)誤 $data[ RETURN_CODE ] = $array[ RETURN_CODE $data[ RETURN_MSG ] = $array[ RETURN_MSG return json_encode($data);
private function order_number($openid){ // date( Ymd ,time()).time().rand(10,99);//18位 return md5($openid.time().rand(10,99));//32位
$wx_key = //申請支付后有給予一個(gè)商戶賬號和密碼,登陸后自己設(shè)置key $stringSignTemp = $stringA. key= .$wx_key;//申請支付后有給予一個(gè)商戶賬號和密碼,登陸后自己設(shè)置key return strtoupper(md5($stringSignTemp)); //curl請求啊 function http_request($url,$data = null,$headers=array()) $curl = curl_init(); if( count($headers) = 1 ){ curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
獨(dú)孤九賤(5)_ThinkPHP5視頻教程ThinkPHP是國內(nèi)最流行的中文PHP開發(fā)框架,也是您Web項(xiàng)目的最佳選擇。《VeVb.com獨(dú)孤九賤(5)-ThinkPHP5視頻教程》課程以ThinkPHP5最新版本為例,從最基本的框架常識開始,將...
Peter-Zhu 2017-05-16 12:03:57
獨(dú)孤九賤(4)_PHP視頻教程江湖傳言:PHP是世界上最好的編程語言。真的是這樣嗎?這個(gè)梗究竟是從哪來的?學(xué)會本課程,你就會明白了。PHP 出品的PHP入門系統(tǒng)教學(xué)視頻,完全從初學(xué)者的角度出發(fā),絕不玩虛的,一切以實(shí)用、有用...
Peter-Zhu 2017-03-20 22:47:17
獨(dú)孤九賤(1)_HTML5視頻教程《VeVb.com原創(chuàng)html5視頻教程》課程特色:php 原創(chuàng)幽默段子系列課程,以惡搞,段子為主題風(fēng)格的php視頻教程!輕松的教學(xué)風(fēng)格,簡短的教學(xué)模式,讓同學(xué)們在不知不覺中,學(xué)會了HTML知識。...
Peter-Zhu 2017-03-13 10:15:11
ThinkPHP5實(shí)戰(zhàn)之[教學(xué)管理系統(tǒng)]本套教程,以一個(gè)真實(shí)的學(xué)校教學(xué)管理系統(tǒng)為案例,手把手教會您如何在一張白紙上,從零開始,一步一步的用ThinkPHP5框架快速開發(fā)出一個(gè)商業(yè)項(xiàng)目。
Peter-Zhu 2017-07-24 16:48:56
PHP入門視頻教程之一周學(xué)會PHP所有計(jì)算機(jī)語言的學(xué)習(xí)都要從基礎(chǔ)開始,《PHP入門視頻教程之一周學(xué)會PHP》不僅是PHP的基礎(chǔ)部分更主要的是PHP語言的核心技術(shù),是學(xué)習(xí)PHP必須掌握的內(nèi)容,任何PHP項(xiàng)目的實(shí)現(xiàn)都離不開這部分的內(nèi)容,通...
PHP教程鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。
新聞熱點(diǎn)
疑難解答
圖片精選