好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php接口版本选择 php接口技术

很多站长朋友们都不太清楚php接口版本选择,今天小编就来给大家整理php接口版本选择,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 如果php版本更新php接口怎么兼容 2、 php5.3哪个版本稳定 3、 如何利用PHP语言开发平台第三方支付接口 4、 php 支付宝接口官方给的md5签名版本和rsa签名版本的区别 5、 php支付宝接口 6、 cpanl如何选择PHP版本以及扩展PHP包 如果php版本更新php接口怎么兼容

你可以在设计接口的时候多加一个参数用来区分 当前是哪个版本 后台根据不同的版本号来判断 调用哪个 接口

php5.3哪个版本稳定

一、如何选择PHP5.3的VC9版本和VC6版本

VC6版本是使用Visual Studio 6编译器编译的,如果你的PHP是用Apache来架设的,那你就选择VC6版本。

VC9版本是使用Visual Studio 2008编译器编译的,如果你的PHP是用IIS来架设的,那你就选择VC9版本。

二、如何选择PHP5.3的Thread Safe和Non Thread Safe版本

先从字面意思上理解,Thread Safe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。

再来看PHP的两种执行方式:ISAPI和FastCGI。

ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择Thread Safe版本;

而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择Non Thread Safe版本。

如何利用PHP语言开发平台第三方支付接口

第一步:签订合约通过第三方拿到接口(可以邮件形式发送、也可以在第三方系统下载),拿到接口后,要确认下接口类型,是否是自己需要的接口,比如B2C接口、B2B接口等类型。

第二步:支付接口分很多语言版本,比如ASP、JSP、PHP、.NET语言版本,所以要选择与自己网站语言匹配的接口进行安装。商城网站的技术一般比较清楚商城的开发语言。

第三步:拿到的支付接口一般包括接口文档和接口代码示例,选择合适的接口代码示例,进行联调,比如自己网站是PHP开发的,就选择PHP代码示例联调。

第四步:接口联调的时候,需要第三方支付提供联调测试账号,方可以联调。联调除了需要联调账号除外,还需要该账号的支付密钥,联调过程中,有什么问题,可以直接找第三方支付技术支持给予协调处理。

第五步:接口联调通过后,可先换成生产环境账号,进行交易测试,测试没问题后,可以放到商城网站进行交易。

php 支付宝接口官方给的md5签名版本和rsa签名版本的区别

虽然支付宝官方还未提供相关SDK,PHP确实可以实现RSA方式的签名,这点其实很重要,由于不熟悉,在遇到困难的时候,经常会不由自主地想到是否PHP不支持RSA签名,干脆用MD5得了,这样就没有了前进的动力。其实说穿了MD5和RSA签名,不同的只是签名方式的区别,其他的都一样,因此我这里主要说一下如何用RSA进行签名和验签。

首先你需要准备下面的东西:

php的openssl扩展里已经封装好了验签的方法openssl_verify。

如果在Windows下的php.ini需要开启Openssl模块: extension=php_openssl.dll

商户私钥:

即RSA私钥,按照手册,按以下方式生成:

openssl genrsa -out rsa_private_key.pem 1024

商户公钥:

即RSA私钥,按照手册,按以下方式生成:

openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

生成之后,按照手册的说明,需要在签约平台上传公钥,需要注意的是,上传的时候需要把所有的注释和换行都去掉。

另外手册中还有如下命令:

openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt

该命令将RSA私钥转换成PKCS8格式,对于PHP来说,不需要。

支付宝公钥:

根据手册,在签约平台获得。

如果你直接复制下来的话,会得到一个字符串,需要进行下面的转换;

1)把空格变成换行

2)添加注释

比如你复制下来的公钥是:MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDRBMjkaBznjXk06ddsL751KyYt

ztPFg0D3tu7jLqCacgqL+lbshIaItDGEXAMZmKa3DV6Wxy+l48YMo0RyS+dWze4M

UmuxHU/v6tiT0ZTXJN3EwrjCtCyyttdv/ROB3CkheXnTKB76reTkQqg57OWW+m9j

TCoccYMDXEIWYTs3CwIDAQAB,那转换之后为:

-----BEGIN PUBLIC KEY-----

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDRBMjkaBznjXk06ddsL751KyYt

ztPFg0D3tu7jLqCacgqL+lbshIaItDGEXAMZmKa3DV6Wxy+l48YMo0RyS+dWze4M

UmuxHU/v6tiT0ZTXJN3EwrjCtCyyttdv/ROB3CkheXnTKB76reTkQqg57OWW+m9j

TCoccYMDXEIWYTs3CwIDAQAB

-----END PUBLIC KEY-----

把公钥保存在文件里。

注意这个是2048位的公钥应该是9行或者10行,不能为1行,不然PHP的openssl_pkey_get_public无法读取,pub_key_id的结果为false,如果没有-----BEGIN PUBLIC KEY----- 和 -----END PUBLIC KEY----- 可以自己加上,最后保存到一个rsa_public_key.pem文件中。

好了,现在已经有了所有的东西,先看签名函数:

复制代码

1 <?php

2 /**

3 * 签名字符串

4 * @param $prestr 需要签名的字符串

5 * return 签名结果

6 */

7 function rsaSign($prestr) {

8 $public_key= file_get_contents('rsa_private_key.pem');

9 $pkeyid = openssl_get_privatekey($public_key);

10 openssl_sign($prestr, $sign, $pkeyid);

11 openssl_free_key($pkeyid);

12 $sign = base64_encode($sign);

13 return $sign;

14 }

15 ?>

复制代码

注意点:

1.$prestr的内容和MD5一样(参见手册,但不包含最后的MD5密码)

2.签名用商户私钥

3.最后的签名,需要用base64编码

4.这个函数返回的值,就是这次请求的RSA签名。

验签函数:

复制代码

1 <?php

2 /**

3 * 验证签名

4 * @param $prestr 需要签名的字符串

5 * @param $sign 签名结果

6 * return 签名结果

7 */

8 function rsaVerify($prestr, $sign) {

9 $sign = base64_decode($sign);

10 $public_key= file_get_contents('rsa_public_key.pem');

11 $pkeyid = openssl_get_publickey($public_key);

12 if ($pkeyid) {

13 $verify = openssl_verify($prestr, $sign, $pkeyid);

14 openssl_free_key($pkeyid);

15 }

16 if($verify == 1){

17 return true;

18 }else{

19 return false;

20 }

21 }

22 ?>

复制代码

注意点:

1.$prestr的内容和MD5一样(参见手册)

2.$sign是支付宝接口返回的sign参数用base64_decode解码之后的二进制

3.验签用支付宝公钥

4.这个函数返回一个布尔值,直接告诉你,验签是否通过

支付宝官方提供的PHP版SDK demo中只对MD5加密方式进行了处理,但android 端和ios端 请求支付宝加密方式只能用RSA加密算法,这时服务端PHP就无法验证签名了,所以需要对demo进行一些修改。

1、修改alipay_notify.class.php文件

verifyNotify 函数第46行

$isSign = $this->getSignVeryfy($_POST, $_POST["sign"]);

改成

$isSign = $this->getSignVeryfy($_POST, $_POST["sign"], $_POST["sign_type"]);

verifyReturn 函数第83行

$isSign = $this->getSignVeryfy($_GET, $_GET["sign"]);

改成

$isSign = $this->getSignVeryfy($_GET, $_GET["sign"], $_GET["sign_type"]);

getSignVeryfy 函数 116行

function getSignVeryfy($para_temp, $sign) {

改成

function getSignVeryfy($para_temp, $sign, $sign_type) {

getSignVeryfy 函数 127行

switch (strtoupper(trim($this->alipay_config['sign_type']))) {

case "MD5" :

$isSgin = md5Verify($prestr, $sign, $this->alipay_config['key']);

break;

default :

$isSgin = false;

}

改成

switch (strtoupper(trim($sign_type))) {

case "MD5" :

$isSgin = md5Verify($prestr, $sign, $this->alipay_config['key']);

break;

case "RSA" :

$isSgin = rsaVerify($prestr, $sign);

break;

default :

$isSgin = false;

}

2、新建一个alipay_rsa.function.php文件

复制代码

1 <?php

2 /* *

3 * RSA

4 * 详细:RSA加密

5 * 版本:3.3

6 * 日期:2014-02-20

7 * 说明:

8 * 以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。

9 * 该代码仅供学习和研究支付宝接口使用,只是提供一个参考。

10 */

11 /**

12 * 签名字符串

13 * @param $prestr 需要签名的字符串

14 * return 签名结果

15 */

16 function rsaSign($prestr) {

17 $public_key= file_get_contents('rsa_private_key.pem');

18 $pkeyid = openssl_get_privatekey($public_key);

19 openssl_sign($prestr, $sign, $pkeyid);

20 openssl_free_key($pkeyid);

21 $sign = base64_encode($sign);

22 return $sign;

23 }

24 /**

25 * 验证签名

26 * @param $prestr 需要签名的字符串

27 * @param $sign 签名结果

28 * return 签名结果

29 */

30 function rsaVerify($prestr, $sign) {

31 $sign = base64_decode($sign);

32 $public_key= file_get_contents('rsa_public_key.pem');

33 $pkeyid = openssl_get_publickey($public_key);

34 if ($pkeyid) {

35 $verify = openssl_verify($prestr, $sign, $pkeyid);

36 openssl_free_key($pkeyid);

37 }

38 if($verify == 1){

39 return true;

40 }else{

41 return false;

42 }

43 }

44 ?>

php支付宝接口

登录支付宝,然后有个商户版的,进入申请双功能接口,

然后下载下来的接口包文件有很多语言的源码

我们选择PHP版的UFT-8

里面包括一些文件

images文件里是支付宝相关的一些标志的图片,lib文件很重要,是整个接口的核心类文件;

alipay.config.php是相关参数的配置文件

alipayapi.php 是支付宝接口入口文件

notify_url.php 是服务器异步通知页面文件;

return_url.php 是页面跳转同步通知文件;

按照开发文档开发即可

<?php

//这里有一些教程 希望能帮到你

// 

?>

望采纳

cpanl如何选择PHP版本以及扩展PHP包

PHP版本的选择

如果服务器在处理PHP包时遇到问题,你可能需要查看一下PHP的设置的方式。如果主机支持用户自主选择网站使用的PHP版本

扩展PHP包

扩展包是使用PHP脚本语言写出来的软件。cPanel使得搜索和添加PHP 扩展包到网站的操作更加容易

随着cpanel版本的升级PHP版本也要更新,所以才有了PHP版本的选择了!

工具/原料

cpanel虚拟主机管理系统

步骤/方法

PHP版本的选择: 登录cPanel,在主页的“软件”管理一栏中,单击“PHP Config”图标,你可以在转到的页面上进行选择。

不同版本的cPanel提供的修改方法可能会略有差别。请仔细阅读每个PHP版本下面的说明,选择适当的版本。

1、选择你希望使用的PHP版本,或者选择“系统默认”,即使用主机选择的版本;

2、单击“更新”,保存修改。

注意:如果在~/public_html/.htaccess中你自定义了句柄,修改这些设置将会覆盖原句柄。所以如果不确定,在修改设置前做好~/public_html/.htaccess的备份。

在该页面上还有一些附加扩展功能以供安装。

注意:这些附加扩展仅能修改你的~/public_html/php.ini文件。如果使用了这些更改,确保其他php初始化文件和你选择的PHP版本是配套的。我们强烈建立你选择“Single php.ini”的PHP版本,以保证网站软件使用适合的php初始化文件。如果选择了PHP 5.3版本,确保子文件夹使用的是"/usr/php/53/usr/bin/php",否则使用的将会是PHP 5.2版本。

扩展PHP包

登录cPanel,在主页的“软件”一栏下,单击“PHP PEAR”查看所有可用的PHP扩展包,可以搜索某个特定的扩展包。如果知道扩展包的名字,则可以直接添加。

查看所有可用的扩展包

1、单击“显示可用的PHP扩展和应用”;

2、单击“安装”,安装你需要的扩展包。

搜索扩展包

使用主题或关键字搜索:

1、在“搜索”框内输入关键字,单击“到”;

2、单击“安装”,安装你需要的扩展包。

单击“显示文档”,查看扩展包的创建者的文档。

安装扩展包

1、如果知道扩展包的名字,在“安装一个PHP扩展和应用包”下输入该名字;

2、单击“现在安装”。

已安装的PHP扩展和应用包列表

该列表可以帮助你管理已安装的扩展包。列表包括模块名称、版本和管理。

如果你认为某个扩展包过期了,单击“更新”,cPanel可以为你更新它。

如果某个扩展包损毁或丢失了,单击“重新安装”。

单击“卸载”,卸载扩展包。

单击“显示文档”,查看扩展包的文档。

系统模块

cPanel中已经事先安装过一些扩展包。单击“显示系统已安装的模块”,可以查看该列表。

记住:系统安装模块不能被删除。单击“显示文档”,查看系统安装扩展包文档。

下面附上一些常用的PHP指令

asp_tags:指服务器是否支持PHP代码中用<%and%>替代标准的<?php and ?>标签。如果这一项选项被关闭,则包含ASP标签的PHP脚本将不能正常运行。

file_uploads:指服务器是否支持PHP脚本介绍通过HTTP(也就是Web)上传的文件。

Include_path:定义网站寻找PHP文件的路径。确保将要的运行的所有PHP脚本都保存在指令指到的地方。

max_execution_time:一个PHP脚本最大运行时间,以秒为单位。该限制可以防止书写不当的脚本拖慢服务器。

max_input_time:一个PHP脚本处理接传入信息的最大时间,以秒为单位。该限制可以防止脚本过载而拖慢服务器。

memory_limit:一个PHP脚本可以包含的最大字节。该限制可以防止书写不当的PHP脚本占用服务器内存。当此处设置为-1,则没有内存限制。

register_globals:警告:此功能过时,需设置为关闭状态,否则网站将不安全。

safe_mode:该指令保证了用户运行PHP脚本时得到执行脚本中的任务的权限。例如,如果脚本命令修改一个文件,用户就需要更新该文件的权限。不过这条指令已经失效了,所以主机可能会关闭它。用户可以使用其他安全措施代替它。

session.save_psth:当访问者访问网站时,需要使用自己独一无二的用户ID。用户ID进行的会话,或者在网站上停留的时间等信息会被记录在主机中。该指令显示了这些信息被记录在何处。(PHP允许你为给定的访问者和会话设立特定的Web内容。)如果“值”那一列存在一个数字,则它指的是信息被存储在多少个目录中。如果你的网站流量很大,将会话的数据分配到多个文件夹内有助于服务器存储和检索这些信息。“值”那一列中文字是指包含会话信息子目录的目录的名字。

upload_max_filesize:上传文件最大字节数。

关于php接口版本选择的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php接口版本选择 php接口技术的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did208770
更新时间:2023-05-03   阅读:18次

上一篇: php运行速度 php性能调优

下一篇:php转ampx php文字转图片

相关资讯

最新资料更新

  • 1.php接收post php接收post数据在发出代码
  • 2.php输入日期表单 php输出日历表
  • 3.关于php用户同时登录的信息
  • 4.php代码太长换行 php换行符号
  • 5.php添加curl支持 php curl formdata
  • 6.php赋值后改变 php变量赋值
  • 7.php网络通信 php通信协议
  • 8.无法使用curlphp 无法使用此地区的账号登陆
  • 9.php类属性分类 php数据类型
  • 10.php获取url# php获取url id
  • 11.php蓝色的代码 html颜色代码
  • 12.php中catch的简单介绍
  • 13.php写循环下拉页面 php下拉菜单的代码
  • 14.vip影院php后台版 vip影视电视剧电影
  • 15.php网站后台demo php后端模板
  • 16.php的如何使用数组if php中数组
  • 17.php爬淘宝图片 php爬取图片
  • 18.php学费多少兄弟连 php教程兄弟连
  • 19.php是否为post的简单介绍
  • 20.图片执行php代码 图片执行php代码是什么

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]