PHP code example of manamine / php-eos-rpc-sdk
1. Go to this page and download the library: Download manamine/php-eos-rpc-sdk library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
manamine / php-eos-rpc-sdk example snippets
composer
$api = (new ChainFactory)->api();
$walapi = (new WalletFactory)->api();
$eos = (new EosRpc($api, $walapi));
echo $api->getInfo();
echo $api->getBlock("1337");
echo $api->getBlockHeaderState("0016e48707b181d93117b07451d9837526eba34a9a37125689fb5a73a5d28a38");
$api->getAccount("blockmatrix1");
echo $api->getCode("eosio.token");
echo $api->getTableRows("eosio", "eosio", "producers", ["limit" => 10]);
echo $api->getCurrencyBalance("eosio.token", "eosdacserver");
echo $api->getCurrencyStats("eosio.token", "EOS");
echo $api->getAbi("eosio.token");
echo $api->getRawCodeAndAbi("eosio.token");
echo $api->getProducers(10);
echo $api->abiJsonToBin("eosio.token", "transfer", ["blockmatrix1", "blockmatrix1", "7.0000 EOS", "Testy McTest"]);
echo $api->abiBinToJson("eosio.token", "transfer", "10babbd94888683c10babbd94888683c701101000000000004454f53000000000c5465737479204d6354657374");
echo $api->getRequiredKeys(
[
"expiration" => "2018-08-23T05.00.00",
"ref_block_num" => 15078,
"ref_block_prefix" => 1071971392,
"max_net_usage_words" => 0,
"delay_sec" => 0,
"context_free_actions" => [],
"actions" => [
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "user",
"permission" => "active"
]
],
"data" => "00000000007015d6000000005c95b1ca102700000000000004454f53000000000c757365722d3e746573746572"
]
],
"transaction_extensions" => []
],
[
"EOS7ijWCBmoXBi3CgtK7DJxentZZeTkeUnaSDvyro9dq7Sd1C3dC4"
]
);
echo $api->pushTransaction("2018-08-23T05:29:39", "15780", "90170226",
[
"actions" => [
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "user",
"permission" => "active"
]
],
"data" => "00000000007015d6000000005c95b1ca102700000000000004454f53000000000c757365722d3e746573746572"
]
],
"signatures" => [
"SIG_K1_KaGHyi59BRqfaDUK6424TYEWcUhWxAG7BLCgYC8vwYNgaHgGLpduTUbNQEsfL8xLzboK8W9T2X69bNpqozTQVCbRSNJWFd"
]
]
);
echo $api->pushTransactions(
[
[
"compression" => "none",
"transaction" => [
"expiration" => "2018-08-23T06:27:26",
"ref_block_num" => 22017,
"ref_block_prefix" => 3920123292,
"context_free_actions" => [],
"actions" => [
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "user",
"permission" => "active"
]
],
"data" => "00000000007015d6000000005c95b1ca102700000000000004454f53000000000c757365722d3e746573746572"
]
],
"transaction_extensions" => []
],
"signatures" => [
"SIG_K1_JzN9DnpyhKfjoef3C2TZBTPA5b6ftwuEBnBpvzkueVXThJ34PFFpUFgqyayfXjeLRc15JmZmDiMYAFX99hUgX8vkGAYcnx"
]
],
[
"compression" => "none",
"transaction" => [
"expiration" => "2018-08-23T06:27:26",
"ref_block_num" => 22017,
"ref_block_prefix" => 3920123292,
"context_free_actions" => [],
"actions" => [
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "tester",
"permission" => "active"
]
],
"data" => "000000005c95b1ca00000000007015d6881300000000000004454f53000000000c7465737465722d3e75736572"
]
],
"transaction_extensions" => []
],
"signatures" => [
"SIG_K1_KZ2M4AG59tptdRCpqbwzMQvBv1dce5btJCJiCVVy96fTGepApGXqJAwsi17g8AQdJjUQB4R62PprfdUdRYHGdBqK1z9Sx9"
]
]
]
);
echo $walapi->create("testwallet");
echo $walapi->open("testwallet");
echo $walapi->lock("testwallet");
echo $walapi->lockAll();
echo $walapi->unlock(["testwallet", "PW5Jb8RAZP6CBjjMLPser3T8i8k9hZXZkMBJ8kb1p6f6hAg2n68jY"]);
echo $walapi->importKey(["testwallet", "5Jmsawgsp1tQ3GD6JyGCwy1dcvqKZgX6ugMVMdjirx85iv5VyPR"]);
echo $walapi->removeKey(["testwallet", "PW5Jb8RAZP6CBjjMLPser3T8i8k9hZXZkMBJ8kb1p6f6hAg2n68jY", "EOS7ijWCBmoXBi3CgtK7DJxentZZeTkeUnaSDvyro9dq7Sd1C3dC4"]);
echo $walapi->createKey(["testwallet", "K1"]);
echo $walapi->listWallets();
echo $walapi->listKeys(["testwallet", "PW5Jb8RAZP6CBjjMLPser3T8i8k9hZXZkMBJ8kb1p6f6hAg2n68jY"]);
echo $walapi->getPublicKeys();
echo $walapi->setTimeout(60);
echo $walapi->signTransaction(
[
"expiration" => "2018-08-23T06:35:30",
"ref_block_num" => 22985,
"ref_block_prefix" => 3016594541,
"max_net_usage_workds" => 0,
"delay_sec" => 0,
"context_free_actions" => [],
"actions" => [
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "user",
"permission" => "active"
]
],
"data" => "00000000007015d6000000005c95b1ca102700000000000004454f53000000000c757365722d3e746573746572"
]
],
"transaction_extensions" => []
],
[
"EOS7ijWCBmoXBi3CgtK7DJxentZZeTkeUnaSDvyro9dq7Sd1C3dC4"
],
"cf057bbfb72640471fd910bcb67639c22df9f92470936cddc1ade0e2f2e7dc4f"
);
$eos->setWalletInfo("testwallet", "PW5Jb8RAZP6CBjjMLPser3T8i8k9hZXZkMBJ8kb1p6f6hAg2n68jY");
echo $eos->pushTransaction(
[
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "user",
"permission" => "active"
]
],
"data" => [
"from" => "user",
"to" => "tester",
"quantity" => "1.0000 EOS",
"memo" => "memo"
]
]
]
);
$trx = $eos->makeTransaction(
[
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "user",
"permission" => "active"
]
],
"data" => [
"from" => "user",
"to" => "tester",
"quantity" => "1.0000 EOS",
"memo" => "memo"
]
]
]
);
$trx_ids = $eos->pushTransactions(
[
$eos->makeTransaction(
[
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "user",
"permission" => "active"
]
],
"data" => [
"from" => "user",
"to" => "tester",
"quantity" => "1.0000 EOS",
"memo" => "memo"
]
]
]
),
$eos->makeTransaction(
[
[
"account" => "eosio.token",
"name" => "transfer",
"authorization" => [
[
"actor" => "tester",
"permission" => "active"
]
],
"data" => [
"from" => "tester",
"to" => "user",
"quantity" => "0.5000 EOS",
"memo" => "memo"
]
]
]
)
]
);
foreach ($trx_ids as $key => $value) {
echo $trx_ids[$key]['transaction_id'] . PHP_EOL;
}
echo $eos->pushAction("eosio", "buyram", ["payer"=>"tester","receiver"=>"tester","quant"=>"1.0000 EOS"], ["actor"=>"tester","permission"=>"active"]);
echo $eos->transfer("user", "tester", "1.0000 EOS", "memo");
$keyPair = $eos->createKeyPair("K1");
echo "$keyPair[0], $keyPair[1]";
vendor/bin/phpunit
vendor/bin/phpunit --coverage-html tests/coverage
vendor/bin/phpmetrics --report-html="tests/static" .
vendor/bin/php-cs-fixer fix --verbose
cd examples
php chain.php
php wallet.php
php eosrpc.php