andkom / php-bitcoin-blockchain
一个简单的PHP库,用于读取比特币区块链数据库。
1.0.0
2018-12-15 12:54 UTC
Requires
- php: ^7.1
- ext-gmp: *
- ext-leveldb: *
- andkom/php-bcdatastream: ^1.1
- bitwasp/bech32: ^0.0.1
- mdanter/ecc: ^0.5.0
- stephenhill/base58: ^1.1
Requires (Dev)
- phpunit/phpunit: >=5.0
This package is auto-updated.
Last update: 2024-09-15 01:09:54 UTC
README
比特币区块链数据库解析器的PHP实现。
特性
- 解析无序区块数据
- 解析有序区块数据
- 解析区块索引
- 解析链状态(UTXO数据库)
要求
- PHP >= 7.1
- Bitcoin Core >= 0.15.1
- leveldb >= 1.20
- php-leveldb >= 0.2.1
- php-gmp >= 7.1
安装
composer require andkom/php-bitcoin-blockchain
示例
$databaseReader = new DatabaseReader('/path/to/bitcoin'); // read ordered blocks foreach ($databaseReader->readBlocks() as $block) { } // read unordered blocks foreach ($databaseReader->readBlocksUnordered() as $block) { } // read UTXO foreach ($databaseReader->getChainstate()->read() as $utxo) { } // get block by hash $block = $databaseReader->getBlockByHash('binary hash in little endian'); // get block by height $block = $databaseReader->getBlockByHeight(12345); // get best block hash $hash = $databaseReader->getChainstate()->getBestBlock();
更多示例请参阅examples目录。
LevelDB安装
Ubuntu/Debian
apt-get install libleveldb-dev pecl install leveldb-0.2.1
Mac OS
brew install leveldb pecl install leveldb-0.2.1
或从源代码编译
git clone https://github.com/google/leveldb.git cd leveldb mkdir -p build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. && cmake --build . make install cd ../../ git clone https://github.com/reeze/php-leveldb.git cd php-leveldb phpize ./configure --with-leveldb make make install
确保您已在php.ini中启用了leveldb.so扩展。