400-028-6601
建站资讯

网站建设资讯

为你提供网站建设行业资讯、网站优化知识、主机域名邮箱、网站开发常见问题等。

PHP语言开发Paypal支付demo的具体实现是怎样的

这篇文章将为大家详细讲解有关PHP语言开发Paypal支付demo的具体实现是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

成都创新互联专注于企业成都全网营销、网站重做改版、睢宁县网站定制设计、自适应品牌网站建设、H5建站商城网站建设、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为睢宁县等各大城市提供网站开发制作服务。

一、开发前准备

https://developer.paypal.com/  到paypal的开发者官网注册开发者账号。

用账号登录之后、点击导航上面的 dashboard、进入dashboard面版。如下截图、后续的操作都是在这个面板中操作。

上面截图中菜单 Sandbox下面的Accounts里面能看到你的 sandbox测试的买家账号和卖家账号。2个测试账号里面都有profile选项里面有changepassword可以设置虚拟账号的密码。

上面截图中菜单Sandbox下面的Transactions就是你的交易记录。

点击截图页面右上角的 Create App按钮。创建一个应用。创建好后、会给你提供一个Client ID 和 Secret。这两个可以配置为php常量后面开发中会用到。

二、进入支付Demo开发

随便在本地建立一个开发代码根目录、先建立一个index.html里面就放一个简单的产品名称和产品价格两个input项即可、代码和截图如下:

DOCTYPE html>                        支付页面title>     head>     <body>         <div>             <form action="checkout.php" method="post" autocomplete="off">                 <label for="item">                     产品名称                     <input type="text" name="product">                 label>                 <br>                 <label for="amount">                     价格                     <input type="text" name="price">                 label>                 <br>                 <input type="submit" value="去付款">             form>         div>     body> html></pre><p><img src="/upload/otherpic72/444422.jpg" alt="PHP语言开发Paypal支付demo的具体实现是怎样的"></p><p>输入产品名称 和 价格。点击去付款就会到paypal的付款页面。用你的sandbox测试买家账号去付款。就会发现付款成功。然后登陆你的测试卖家账号。会发现卖家账号已经收到付款。当然这里会扣除paypal收取的手续费。手续费收的是卖家的。</p><p>下面来具体看看php是怎么实现的。首先先要把paypal提供的 php-sdk给弄到你的代码目录中来。这里介绍使用php的包管理器composer来获取***sdk、当然你可以可以从github等其他渠道获取***的paypal php-sdk。</p><p>默认你的电脑已经安装composer了。如果没有自己去度娘或者google下composer安装。</p><p>然后在你的代码根目录写一个composer.json文件来获取包内容。json文件代码如下:</p><p>{<br/>    "require" : {         "paypal/rest-api-sdk-php" : "1.5.1"<br/>    }<br/>}</p><p>这里如果是 linux/unix系统就直接再根目录执行composer install来获取包内容。</p><p>安装好之后。根目录下面会产生一个vendor目录。里面有composer 和 paypal两个子目录。composer里面实现了自动加载、paypal则是你的sdk内容。</p><p>接 下来我们来写一个公共文件(这里默认用 app/start.php、你的项目中可以自定义)、其实里面就只是实现了  sdk的autoload.php自动加载 和 创建刚才上面的的client id  和  secret生成的paypal支付对象实例。start.php代码如下:</p><p>php</p><p>require "vendor/autoload.php"; //载入sdk的自动加载文件 define('SITE_URL', 'http://www.paydemo.com'); //网站url自行定义 //创建支付对象实例 $paypal = new \PayPal\Rest\ApiContext(     new \PayPal\Auth\OAuthTokenCredential(         '你的Client ID'         '你的secret'<br/>    )<br/>);<br type="_moz"/></p><p>接下来就来实现表单中提交的处理文件 checkout.php。代码内容如下:</p><p>php</p><p>/**<br/>* @author xxxxxxxx<br/>* @brief 简介:<br/>* @date 15/9/2<br/>* @time 下午5:00<br/>*/<br/>use \PayPal\Api\Payer;<br/>use \PayPal\Api\Item;<br/>use \PayPal\Api\ItemList;<br/>use \PayPal\Api\Details;<br/>use \PayPal\Api\Amount;<br/>use \PayPal\Api\Transaction;<br/>use \PayPal\Api\RedirectUrls;<br/>use \PayPal\Api\Payment;<br/>use \PayPal\Exception\PayPalConnectionException;<br/><br/>require "app/start.php"; if (!isset($_POST['product'], $_POST['price'])) {     die("lose some params"); } $product = $_POST['product']; $price = $_POST['price']; $shipping = 2.00; //运费  $total = $price + $shipping;  $payer = new Payer(); $payer->setPaymentMethod('paypal');  $item = new Item(); $item->setName($product)     ->setCurrency('USD')     ->setQuantity(1)     ->setPrice($price);  $itemList = new ItemList(); $itemList->setItems([$item]);  $details = new Details(); $details->setShipping($shipping)     ->setSubtotal($price);  $amount = new Amount(); $amount->setCurrency('USD')     ->setTotal($total)     ->setDetails($details);  $transaction = new Transaction(); $transaction->setAmount($amount)     ->setItemList($itemList)     ->setDescription("支付描述内容")     ->setInvoiceNumber(uniqid());  $redirectUrls = new RedirectUrls(); $redirectUrls->setReturnUrl(SITE_URL . '/pay.php?success=true')     ->setCancelUrl(SITE_URL . '/pay.php?success=false');  $payment = new Payment(); $payment->setIntent('sale')     ->setPayer($payer)     ->setRedirectUrls($redirectUrls)     ->setTransactions([$transaction]);  try {     $payment->create($paypal); } catch (PayPalConnectionException $e) {     echo $e->getData();     die(); }  $approvalUrl = $payment->getApprovalLink(); header("Location: {$approvalUrl}");<br type="_moz"/></p><p>checkout.php通过表单提交上来的参数对支付具体细节和参数进行初始化和设置。这里只列出了常用的部分。paypal提供了很多参数设置。具体更丰富的可以自己参考paypal官方开发者文档。</p><p>checkout.php设置完参数之后。会生成一个支付链接。用header跳转到这个支付链接(就是paypal的支付页面)到这个支付页面上面就可以用你的sandbox提供的buyer账号去支付了。</p><p>用buyer账号支付完成之后。去看看你的sandbox的商家账户余额吧。就会发现已经收到了扣除手续费外的钱了。</p><p>这里支付成功 或者 失败后还有一个回调的处理。回调处理的php文件再上面的checkout.php里面的setReturnUrl处设置。这里设置的是/pay.php?success=true</p><p>接下来我们来看看pay.php是怎么简单处理回调的。先贴上pay.php的代码:</p><p>php</p><p>require 'app/start.php';<br/><br/>use PayPal\Api\Payment;<br/>use PayPal\Api\PaymentExecution;<br/><br/>if(!isset($_GET['success'], $_GET['paymentId'], $_GET['PayerID'])){<br/>    die();<br/>}<br/><br/>if((bool)$_GET['success']=== 'false'){<br/><br/>    echo 'Transaction cancelled!';<br/>    die();<br/>}<br/><br/>$paymentID = $_GET['paymentId'];<br/>$payerId = $_GET['PayerID'];<br/><br/>$payment = Payment::get($paymentID, $paypal);<br/><br/>$execute = new PaymentExecution();<br/>$execute->setPayerId($payerId);<br/><br/>try{<br/>    $result = $payment->execute($execute, $paypal);<br/>}catch(Exception $e){<br/>    die($e);<br/>}<br/>echo '支付成功!感谢支持!';<br type="_moz"/></p><p>好了。到这里一个简单的paypal支付的demo其实已经走通了。懂得支付原理之后、想要再你自己的项目里面进行更丰富的扩展、就去paypal的官方文档查看更多具体的开发项设置。包括交易明细的获取等等都是可以实现的。这里就不具体讲下去了。</p><p>关于PHP语言开发Paypal支付demo的具体实现是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。</p>            
            
                        <br>
            网站标题:PHP语言开发Paypal支付demo的具体实现是怎样的            <br>
            链接URL:<a href="http://www.hnjierui.cn/article/pegshp.html">http://www.hnjierui.cn/article/pegshp.html</a>
        </div>
    </div>
    <div class="other">
        <h3>其他资讯</h3>
        <ul>
            <li>
                    <a href="/article/phsepe.html">linux常用命令打印,linux怎么打印文件</a>
                </li><li>
                    <a href="/article/phsieo.html">最好的linux命令手册,linux基础命令表</a>
                </li><li>
                    <a href="/article/phsegd.html">nosql有点,nosql缺点</a>
                </li><li>
                    <a href="/article/phsish.html">垃圾windows系统的简单介绍</a>
                </li><li>
                    <a href="/article/phsidj.html">androidanr,androidanr原因</a>
                </li>        </ul>
    </div>
</div>
<footer>
    <div class="foot-top">
        <ul>
            <li>
                <div class="title">关于美图</div>
                <div class="tbox">
                    <div class="txt">
                        美图齐众专注于网站建设、小程序开发,
                        <br /> 用心做好每一个网站,懂您所需、做您所想!
                        <br /> 我们比其他网络公司做的更好、做的更多,
                        <br /> 为客户创造更大的价值,让客户更省心!
                    </div>
                    <a rel="nofollow" href="javascript:;" class="more">MORE</a>
                </div>
            </li>
            <li>
                <div class="title">相关专题</div>
                <div class="tbox">
                    <a href="javascript:;" class="link">企业官网定制</a>
                    <a href="javascript:;" class="link">小程序开发</a>
                    <a href="javascript:;" class="link">品牌网站设计</a>
                    <a href="javascript:;" class="link">网站建设标签</a>
                    <a href="javascript:;" class="link">巴中网站建设</a>
                    <a href="javascript:;" class="link">高端网站设计</a>
                    <a href="javascript:;" class="link">公司做网站</a>
                </div>
            </li>
            <li>
                <div class="title">凭什么选择我们</div>
                <div class="tbox">
                    <a class="link">专业设计团队</a>
                    <a class="link">快速响应服务</a>
                    <a class="link">做网站送推广</a>
                    <a class="link">服务巴中众多客户</a>
                    <a class="link">项目检测具体全面</a>
                    <a class="link">技术研发能力强劲</a>
                    <a class="link">深度符合SEO优化</a>
                    <a class="link">巴中网站设计制作</a>
                    <a class="link">箣划设计制作推广</a>
                    <a class="link">售后服务让您省心</a>
                </div>
            </li>
            <li>
                <div class="title">网站设计案例</div>
                <div class="tbox">
                    <ul>
                        <li>
                            <a href="javascript:;" target="_blank">
                                <div class="img"><img src="/Public/Home/images/gebaili.jpg" alt="哥百利" />
                                </div>
                                <div class="tboxs">
                                    <div class="t1">哥百利</div>
                                    <div class="t2">家具研发、设计、生产、服务为一体的专业实木家具订做企业</div>
                                </div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:;" target="_blank">
                                <div class="img"><img src="/Public/Home/images/cdshujin.jpg" alt="蜀锦在线" /></div>
                                <div class="tboxs">
                                    <div class="t1">蜀锦在线</div>
                                    <div class="t2">汽车行业网站建设</div>
                                </div>
                            </a>
                        </li>
                    </ul>
                </div>
            </li>
        </ul>
    </div>
    <div class="foot-center">
        <ul>
            <li>
                <div class="f-ewm"><img alt="美图齐众微信公众号" src="/Public/Home/images/ewm.jpg" /></div>
                <div class="tbox ewm">
                    <div class="t1">扫一扫关注</div>
                    <div class="t2">专业团队为您解答</div>
                </div>
            </li>
            <li>
                <div class="tbox tel">
                    <div class="t1">电话/邮箱</div>
                    <div class="t2">400-028-6601 / 028-86922220<br>631063699@qq.com</div>
                </div>
            </li>
            <li>
                <div class="tbox sz">
                    <div class="t1">成都(总部)</div>
                    <div class="t2">成华区 双林路22号仁禾商务楼5F<br> 大客户专线:13518219792
                    </div>
                </div>
            </li>
            <li>
                <div class="tbox gz">
                    <div class="t1">巴中(分部)</div>
                    <div class="t2">
                        巴州区佛阳居委会六组5号楼2楼2号
                        <br /> 028-86922220
                    </div>
                </div>
            </li>
        </ul>
    </div>
    <div class="foot-button">
        <div class="link-box" style="width:100%;float:none;">
            <div class="a-box"></div>
            <div style="border-top:1px solid #ebebeb;font-size:12px;color:#666666;line-height:2;padding-top:20px;margin-top:20px;">
                业务范围包括企业网站建设、商城系统开发、品牌网站设计、旅游网站制作、英文外贸网站、教育培训门户网站开发、微信手机移动端开发、响应式网站建设、微信小程序开发、APP定制和其他类型网站定制等。
                <br>服务区域包括成都市锦江区、青羊区、武侯区、金牛区、成华区、龙泉驿、温江、新都、高新区、成都市以及全国各地接受异地服务商的公司企业或者机构。
                <br>
                <div class="a-box"><span><b>友情链接</b></span>
                    <a href="http://www.stwzsj.com/" title="成都帛金建站" target="_blank">成都帛金建站</a><a href="http://chengdu.cdxwcx.cn/" title="成都网站制作" target="_blank">成都网站制作</a><a href="http://www.36103.cn/" title="成都网站建设" target="_blank">成都网站建设</a><a href="http://www.wjwzjz.com/" title="温江网站制作" target="_blank">温江网站制作</a><a href="http://www.hkruijie.cn/" title="hkruijie.cn" target="_blank">hkruijie.cn</a><a href="http://shengjin119.com/" title="四川胜锦安防" target="_blank">四川胜锦安防</a><a href="https://www.cdcxhl.com/mianfei/jianzhan/chengdu.html" title="成都免费建网站" target="_blank">成都免费建网站</a><a href="http://www.cdxwcx.cn/tuoguan/jianyang.html" title="简阳服务器托管" target="_blank">简阳服务器托管</a><a href="http://www.gtmaxf.cn/" title="消防维保" target="_blank">消防维保</a><a href="http://www.cdwuji.com/" title="正泰动物" target="_blank">正泰动物</a>                </div>
            </div>
            <div class="copyright">©2025 青羊区美图齐众设计工作室(个体工商户) 版权所有 巴中站    蜀ICP备19037934号</div>
        </div>
    </div>
</footer>
<div class="fixed-contact-wrap show">
    <ul class="item-list clearfix">
        <li class="phone">
            <a rel="nofollow" target="_blank" href="tel:028-86922220"><i
                    class="icon"></i><strong>028-86922220</strong></a>
        </li>
        <li class="qq">
            <a rel="nofollow" target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes"><i
                    class="icon"></i><strong> 244261566</strong></a>
        </li>
        <li class="back-top">
            <a href="#" rel="nofollow" class="back-to-top"><i class="icon"></i><strong> 回到顶部</strong></a>
        </li>
    </ul>
</div>
<script type="text/javascript">
    //右侧联系我们悬浮窗
    $(".fixed-contact-wrap").hover(function () {
        $(this).addClass("active");
    }, function () {
        $(this).removeClass("active");
    })
    function show_phone_menu() {
        $(".right-side ul").toggle();
    }
</script>

</body>
</html>

<script>
    $(".con img").each(function(){
        var src = $(this).attr("src");    //获取图片地址
        var str=new RegExp("http");
        var result=str.test(src);
        if(result==false){
            var url = "https://www.cdcxhl.com"+src;    //绝对路径
            $(this).attr("src",url);
        }
    });
    window.onload=function(){
        document.oncontextmenu=function(){
            return false;
        }
    }
</script>