A simple class for making calls to Multichain's API using PHP.
Forked from EasyBitcoin-PHP, Copyright (c) 2013 Andrew LeCody https://github.com/aceat64/EasyMultiChain-PHP
-
Include multichain-api.php into your PHP script:
require_once('multichain-api.php');
-
Initialize MultiChain connection/object:
$MultiChain = new MultiChain('username','password','localhost','2286', null, 5);
Check, if initialization worked (i.e. curl is installed)
if (!$MultiChain->initOK) { echo($MultiChain->error); exit(); }
If you wish to make an SSL connection you can set an optional CA certificate or leave blank
$MultiChain->setSSL('/full/path/to/mycertificate.cert');
-
Make calls to multichaind as methods for your object. Examples:
$MultiChain->getinfo(); $MultiChain->getrawtransaction('0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098',1); $MultiChain->getblock('000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f');
If you called 'getinfo()' at least once, the major version of multichaind is set as integer in $this->versionMajor as well as $this->nodeversion and $this->protocolversion
$res = $MultiChain->getinfo(); if ($MultiChain->versionMajor == 2) { // code, which is for new versions only ... } // show versions of node and protocol echo("### nodeversion: $chain->nodeVersion\r\n"); echo("### protocolversion: $chain->protocolVersion\r\n");
-
When a call fails for any reason, it will return false and put the error message in
$MultiChain->error
-
The HTTP status code can be found in $MultiChain->status and will either be a valid HTTP status code or will be 0 if cURL was unable to connect.
-
The full response (not usually needed) is stored in
$MultiChain->response
while the raw JSON is stored in$MultiChain->raw_response