本文介绍5个最常用的PHP区块链开发库,适合PHP开发人员在以太坊/比特币等主流区块链的对接、去中心化应用开发、量化交易算法开发等应用场景中选择使用。
1、CCXT - 支持PHP的区块链量化交易开发库
CCXT是一个支持PHP/Python/JavaScript的区块链数字加密货币交易开发库,支持超过120个区块链数字加密货币交易所。
CCXT的目标是帮助开发人员、技术性交易者、数据科学家和金融分析师构造交易算法,它可以连接众多的区块链数字加密货币交易所并自动进行交易,可用于数据分析、数据可视化、指标跟踪、量化交易等软件工程领域。
CCXT的主要特性包括:
- 支持众多的区块链数字货币交易所
- 完整支持不同交易所的公开和私有API
- 提供可选的跨交易所的统一API
- 支持Node/Python/PHP和web浏览器
2、Web3.php - PHP版本的以太坊区块链及生态访问接口
Web3.php是访问以太坊区块链及生态系统的PHP版本的访问接口,支持原生的ABI解析和智能合约交互。
下面是使用Web3.php查询以太坊区块链的节点版本的PHP代码:
use Web3\Web3;
$web3 = new Web3('http://localhost:8545');
$web3->clientVersion(function ($err, $version) {
if ($err !== null) {
// do something
return;
}
if (isset($version)) {
echo 'Client version: ' . $version;
}
});
3、Bitcoin.php - 比特币区块链协议的PHP实现
Bitcoin.php是一个几乎完全采用PHP开发的比特币区块链协议实现,其主要特性包括:
- 支持区块、区块头、merkle区块和布隆过滤器
- 支持P2SH和隔离见证脚本
- 可适配的椭圆曲线库,默认使用纯PHP实现的PhpEcc,支持更高效的libsecp256k1
- 支持比特币交易的构造、解析、签名和验证
- 支持RFC6979确定性签名
- 支持BIP32和较早期的electrum确定性密钥算法
- 支持BIP39和较早期的electrum种子格式
- 提供用于构造常见类型脚本的工厂类ScriptFacotry
- 支持到libbitcoinconsensus的绑定
- 支持到Electrum Stratum Server的绑定
Bitcoin.php中文教程 | Bitcoin.php 官方下载地址
4、PHPTradingBot - PHP/Laravel区块链交易机器人平台
PHPTradingBot是一个基于Laravel实现的模块化的数字加密货币交易机器人平台,可以自由地在主流交易所自动交易。PHPTradingBot的主要特性包括:
- 技术信号API
- 浮动止盈/止损
- 支持bianace
- 进程后台化,包括下单、价格、技术信号以及可选的交易所socks5代理
-
提供模块钩子函数,可查看/App/Modules/ProfitClone.php 了解以下钩子的使用方法
- onTick()
- OnSignalReceived()
- beforeSell()
- beforeBuy()
- AfterSell()
- AfterBuy()
5、ethereum-php - PHP封装的以太坊JSON-RPC开发接口
ethereum-php是另一个采用PHP封装的以太坊JSON-RPC开发接口,目前仅支持读取以太坊区块链上的信息,暂时还不支持写入区块链,即不支持交易。
下面的php代码使用ethereum-php查询当前的以太坊协议版本:
use Ethereum\Ethereum;
try {
// Connect to Ganache
$eth = new Ethereum('http://127.0.0.1:7545');
// Should return Int 63
echo $eth->eth_protocolVersion()->val();
}
catch (\Exception $exception) {
die ("Unable to connect.");
}
原文链接:5个主流的PHP区块链开发库 — 汇智网
来源:oschina
链接:https://my.oschina.net/u/4263437/blog/4302550