以太坊是一个高度观看的区块链。它建立了一个基于密码技术和P2P通信技术的分散平台。所有交易都同时存储在每个节点中。通过单向将块层成链,以太坊有效地确保交易不会被篡改:
智能合约平台
以太坊是第一个实施虚拟机的区块链,因此它为智能合约的运行提供了良好的支持环境。因此,以太坊称为区块链2.0,它与区块链1.0区分开,该区块链由比特币表示,该比特币的特征是数字加密货币作为其核心功能。
智能合约可以理解为机器之间的合同协议,并且在满足某些条件时会自动执行商定的逻辑。例如,在保险索赔程序中,如果满足索赔条件,将自动向被保险人释放赔偿。可以使用智能合约实施此过程。
有多种语言可以开发以太坊智能合约,但是最常用的语言当前相似。本课程将使用智能合约的开发。
JSON-RPC
如果我们想构建一个分散的应用程序(DAPP),除了开发智能合约外,我们通常还需要使用其他开发语言为用户提供用于操作智能合约的用户界面,例如开发网页,移动应用程序或桌面应用程序。所有这些代码都需要与以太坊相互作用。
以太坊指定每个节点需要实现的JSON RPC API应用程序开发接口。该界面是无关的。应用程序可以使用此接口协议来通过HTTP或IPC等各种通信机制操作以太坊节点:
从理论上讲,您可以使用任何语言根据JSON RPC接口在以太坊上开发分散的应用程序。但是,为了提高发展效率,一种更好的方法是使用JSON RPC封装库中的特定语言。这些库封装了JSON RPC的协议详细信息,该协议详细信息可帮助开发人员专注于业务逻辑的实施。
但是,在PHP社区中,目前缺乏一个相对成熟的以太坊开发计划,而该软件包已被统一认可。在DAPP的开发过程中,通常有必要全面利用多个代码资源来解决问题。
课程内容
本课程的目的是帮助PHP工程师迅速掌握开发以太坊应用程序的技能,并解释以太坊的一些基本概念,例如帐户,交易和智能合约的发展。
第2章嗨,以太坊
本章将通过简单的PHP应用程序开发将PHP用于以太坊应用程序开发的最简单过程。通过这部分学习,您可以在PHP应用程序中引入基本的以太坊支持。
第3章帐户管理
本章将详细介绍以太坊的帐户管理接口。如果您有兴趣开发集中的钱包应用程序,或者需要在自己的网站上动态创建一个帐户(例如,您想向网站上的以太坊付款增加支持),则内容的这一部分将有很大的帮助。
第4章理解状态和交易
本章主要解释以太坊的交易操作接口,还引入了一些重要的概念,例如状态,裸贸易,汽油等。这部分将帮助您解决PHP应用程序与以太坊之间的相互作用的大多数问题。
第5章智能合约的开发,部署和互动
本章将通过完整的开发,编译,代码生成,部署和代币合同的交互方式来解释使用PHP来操作合同的方法。如果您想向您的网站添加令牌支持,则必须将此部分内容添加。
第6章过滤器和事件
本章主要解释以太坊的通知机制以及如何在PHP中使用过滤器来监视块和交易的产生以及合同事件的触发。
该课程为每个知识点提供相应的预设代码,您可以在实验环境的〜/repo目录中查看。
班上PHP的小例子
使用PHP获取节点版本信息。
我们只需要在PHP代码中发送HTTP请求包即可。您可以使用您喜欢的任何HTTP库,例如卷发等,甚至可以直接使用它们来调用以太坊的JSON RPC API。
例如,以下代码使用库:
将上述内容保存为raw-test.php并执行:
您应该能够看到结果。
课程地址:您还可以在上搜索关键字“ ”,以访问我们的网站,并在“课程中心”中找到相应的课程。
的内容涵盖了以下编程技术。发送相应的文本将带来相关课程信息:
区块链,以太坊,EOS,比特币,node.js,c,c#,php ,, uml ,, css,html,html ,, gulp ,, git ,, lite ,, lite ,, ,,,d3.js ,, svg ,, svg ,, saaS,saaS,saaS,saaS,yaml,yaml,yaml,vue.js ,, vue.js ,, c+,, c++,, c+,, c+,, c+,,