Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 5521|Respuesta: 0

Cómo interactúa PHP con Ethereum

[Copiar enlace]
Publicado en 25/8/2018 23:02:44 | | |
Esta publicación fue editada por última vez por malakashi el 25-8-2018 a las 23:11

Desde el año pasado, hemos estado desarrollando un negocio blockchain. Recientemente usé Ethereum y PHP, así que pensé que deberíamos hablar de este tema.

Aquí va una premisa:

  • 1. Entender blockchain
  • 2. Tener comprensión de lenguajes de programación

Conclusiones clave de este artículo:

  • 1. Entorno de desarrollo
  • 2. Introducción de Ethereum
  • 3. Preparar la llamada JSON-RPC
  • 4. Acceso desde PHP
1. Entorno de desarrollo

Usaremos Ubuntu 14.04 LTS. Tras instalar el sistema operativo, introduce los comandos predeterminados.

Después de eso configuré SSH, iptables, ntp, etc.

Luego está Apache + PHP. La versión de PHP será la 5.5.



2. Introducción de Ethereum

Esta vez usaremos un nodo Ethereum hecho en lenguaje GO, go-ethereum abreviado como geth.

Primero añadimos un repositorio.

Después de eso, simplemente instálalo.

Lanza Geth tan pronto como termine la instalación.
Primero, crea un catálogo de datos y describe la configuración del primer bloque (bloque génesis).

Después, crea un bloque de Genesis y empieza geth.

Cuando está en modo consola, el arranque es exitoso.

Se especifican varias opciones y la explicación se resume a continuación.

  • NetworkID, que se conecta a un nodo público.
  • puerto, que es un puerto para espera de reserva. Lo cambié a un número de 4 dígitos.
  • nodiscover, que es una configuración que impide que los nodos se vean automáticamente.
  • datadir, que especifica el directorio donde la blockchain almacena los datos.
  • consola, que lanza la consola al mismo tiempo que arranca.

Vale, prepárate para la siguiente llamada de PHP, pero antes de eso hagamos más preparación en el lado geth.

3. Preparar la llamada JSON-RPC

Acceso desde PHP vía JSON-RPC. Aquí vamos a montar el barrio.

Primero, se obtendrá la información actual de la cuenta. También usamos la consola geth que lanzamos la última vez.

Aún no hemos creado una cuenta, así que es necesario crearla.

La cuenta ya está creada. Lo configuramos para que se puedan ganar recompensas mientras minamos.

Después, como el nodo actual no permite llamadas RPC, añade una opción y reinicia. Acabemos primero con los geth.

Vamos a añadir opciones y reiniciar

Se han añadido varias opciones para RPC. La explicación es la siguiente.

  • rpc, permitiendo que RPC esté en espera.
  • rpcaddr, una dirección IP para RPC alternativos.
  • rpcport, el puerto usado para escuchar RPC. Bajé el número de puerto a 4 dígitos.
  • rpccorsdomain, un dominio que permite acceder a RPC. Ten en cuenta que al publicar un nodo, si es "*", permitirá todo.

El lado nodo ya está listo. Lo siguiente será una llamada de PHP.

4. Acceso desde PHP

Por último, ¿por qué acceder desde PHP, pero tenerlos? Porque es bastante difícil y se puede usar cuando escribes códigoEsta

Como puedes ver en el README, solo necesitas crear una clase.

Vamos a usarlo poniéndolo en el mismo directorio que el script de prueba.

Cuando ejecutamos este script, debería haber una lista de cuentas como sigue.



Si no puedes conectarte, revisa la configuración de puertos, etc.

Hasta ahora lo hemos explicado brevemente, pero ¿no resulta sorprendentemente fácil desarrollar con PHP?

En lo que respecta a los contratos inteligentes, se complica un poco, y escribiremos sobre ello más adelante.

Además, si quieres ver directamente cómo se usa blockchain en Ethereum, puedes echarle un vistazohttp://xc.hubwiz.com/course/5b36629bc02e6b6a59171de3?affid=825itsvse, introduce principalmente el uso de PHP para la interacción de desarrollo de contratos inteligentes, creación de cuentas, trading, transferencia, desarrollo de tokens, filtros y eventos, etc.






Anterior:Ocho casos de uso reales de Docker
Próximo:Gracias, gracias, gracias
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com