Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

PHP调用以太坊接口

西门幻雪雪vj
104 0 0
以太坊规定了每个节点需要实现的JSON RPC应用开发接口,如果希望使用PHP开发一个以太坊区块链上的去中心化应用(DApp),首先要解决的问题就是如何使用PHP调用以太坊JSON RPC接口:  K9 A! v8 l% C8 d' U9 z+ O

% y' ^" s+ s' a4 G) A7 n  r如果你希望将网站快速接入以太坊,例如支持以太币支付,或者发行自己的代币,那么这个PHP以太坊开发详解课程提供了最佳的学习路径。. A& x1 j8 j5 u6 I) \, Q

2 j$ c, b/ d* S虽然接口规范并没有对传输层进行约定,但大多数以太坊节点软件都实现了对HTTP协议的支持。
1 _" \' s& k. e0 O. j( E8 u6 m! I因此我们可以使用Php的HTTP开发包来进行调用。例如,下面的代码使用guzzle这个http开发包来获取以太坊节点旳版本信息:0 G3 \+ V0 y6 |
5 D0 t" w% x2 w1 P7 I( S
  1. [
    ' V- w; }2 U% T0 F/ x
  2.     'jsonrpc' => '2.0',+ C4 l( _# i- C  R! _5 ^( y
  3.     'method' => 'web3_clientVersion',4 S" c7 J/ u7 R. z
  4.     'params' => [],& a8 \6 |  x6 ?# D# z
  5.     'id' => time()
    / ]" M2 _4 K$ Q$ y7 w
  6.   ]/ L  Z3 Q7 ?, M+ |
  7. ];* ?9 Y; m. K9 j1 {. o! t, f6 `
  8. $rsp = $client->post('http://localhost:8545',$opts);
    - t, \7 n& A7 W( q- J7 f, r% l) Z
  9. echo $rsp->getBody() . PHP_EOL;
复制代码

% L* N) v0 ?- ]1 L* ~1 O
, Y1 L! X# v0 _9 ]0 C8 q3 c当然你也可以借助于一些开源的封装,不过在php社区中,目前还缺乏得到统一认可的、相对比较成熟的以太坊开发包,因此在DApp的开发过程中,理解这些开源代码的实现原理就至关重要,而且往往需要综合利用多方面的代码资源才能解决问题。$ r: k$ @5 Z3 w% _( b

6 f9 i' @  ]. T& @4 M4 l: K/ l  E" y' ?9 b3 _) {+ [
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

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

    0

  • 关注

    0

  • 主题

    10