我们一个项目划分为用户前台、面向第三方的API、电子钱包三大块,其中电子钱包会在前台充值虚拟货币,还有第三方API进行虚拟货币的流入流出操作。三个模块都是php开发,代码相互独立,部署在同一台服务器上,数据库等资源都可以共用,但是对于电子钱包,考虑到安全和日志的问题,不希望其他模块直接操作数据库进行余额变更,所以想把电子钱包设计一套仅供其他程序调用的接口去操作货币流。
那么问题来了,既然内部程序之间的通信,就不必用到http协议去做接口,那么我想到的只有命令行了,个人觉得似乎又“原始”了一点,请问有什么其他方案能安全高效的去做这样的内部调用?
回复内容:
我们一个项目划分为用户前台、面向第三方的API、电子钱包三大块,其中电子钱包会在前台充值虚拟货币,还有第三方API进行虚拟货币的流入流出操作。三个模块都是php开发,代码相互独立,部署在同一台服务器上,数据库等资源都可以共用,但是对于电子钱包,考虑到安全和日志的问题,不希望其他模块直接操作数据库进行余额变更,所以想把电子钱包设计一套仅供其他程序调用的接口去操作货币流。
那么问题来了,既然内部程序之间的通信,就不必用到http协议去做接口,那么我想到的只有命令行了,个人觉得似乎又“原始”了一点,请问有什么其他方案能安全高效的去做这样的内部调用?
不认为http有什么不好,你说的命令行是指输入输出流么?http绑定ip地址不让外网访问也能做好安全,或者可以使用socket自定协议进行通信。
限定内网访问
直接导入模块,执行模块方法不行么……

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Dreamweaver CS6
视觉化网页开发工具

禅工作室 13.0.1
功能强大的PHP集成开发环境

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境