Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

PHP调用以太坊接口

西门幻雪雪vj
160 0 0
以太坊规定了每个节点需要实现的JSON RPC应用开发接口,如果希望使用PHP开发一个以太坊区块链上的去中心化应用(DApp),首先要解决的问题就是如何使用PHP调用以太坊JSON RPC接口:
1 _5 B& K4 B! f& R1 U6 T5 E2 s& ?$ g' G
( W/ F8 ^" `- |. N% F. n" f% A" I如果你希望将网站快速接入以太坊,例如支持以太币支付,或者发行自己的代币,那么这个PHP以太坊开发详解课程提供了最佳的学习路径。+ C& |/ E/ p) m  ?2 X% d+ s
) R) w. T. l1 m% C- D% `
虽然接口规范并没有对传输层进行约定,但大多数以太坊节点软件都实现了对HTTP协议的支持。5 ?2 Q' U7 e" S) _( Y3 P5 D& B! X
因此我们可以使用Php的HTTP开发包来进行调用。例如,下面的代码使用guzzle这个http开发包来获取以太坊节点旳版本信息:3 G; b8 P0 ?, ]1 Y) a8 m
) i2 c6 K' ?% ~8 |' M
  1. [; t) j$ k4 h/ b8 f. o
  2.     'jsonrpc' => '2.0',! B- p, b" G+ O( u9 I, u8 G
  3.     'method' => 'web3_clientVersion',! \9 K$ ^3 L( x
  4.     'params' => [],
    0 }* D& w3 C8 `# X& L) G
  5.     'id' => time()+ A! Y+ V- C4 ^, W  y- j" B. m/ h
  6.   ]# E3 N# h$ e2 `, Z6 h% Q
  7. ];
    - X- ^; P. k: W0 i- a' f4 o3 q$ M; w
  8. $rsp = $client->post('http://localhost:8545',$opts);$ g+ x. d$ G) |& k3 }) f
  9. echo $rsp->getBody() . PHP_EOL;
复制代码
8 l+ W3 |3 V; l/ ], K; b7 e
/ O9 V% E) e9 Z
当然你也可以借助于一些开源的封装,不过在php社区中,目前还缺乏得到统一认可的、相对比较成熟的以太坊开发包,因此在DApp的开发过程中,理解这些开源代码的实现原理就至关重要,而且往往需要综合利用多方面的代码资源才能解决问题。( ~5 [) p+ k' H3 C% T
# B" U. t& y. ~) t$ l0 G

) U/ T  \) W: Q6 _
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

西门幻雪雪vj 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    10