Questo post è stato modificato l'ultima volta da malakashi il 25-8-2018 alle 23:11
Dallo scorso anno stiamo sviluppando un'attività blockchain. Recentemente ho usato Ethereum e PHP, quindi ho pensato che dovremmo parlare di questo argomento. Ecco una premessa: - 1. Comprendere la blockchain
- 2. Avere una comprensione dei linguaggi di programmazione
Punti chiave da questo articolo: - 1. Ambiente di sviluppo
- 2. Introduzione di Ethereum
- 3. Preparare la chiamata JSON-RPC
- 4. Accesso da PHP
1. Ambiente di sviluppoUseremo Ubuntu 14.04 LTS. Dopo aver installato il sistema operativo, inserisci i comandi predeterminati. Dopo di che ho configurato SSH, iptables, ntp, ecc. Poi c'è Apache + PHP. La versione PHP sarà la 5.5.
2. Introduzione di EthereumQuesta volta useremo un nodo Ethereum realizzato nel linguaggio GO, go-ethereum abbreviato come geth. Aggiungiamo prima un repository. Dopodiché, installalo e basta. Lancia i Geth non appena l'installazione è completata. Per prima cosa, crea un catalogo dati e descrivi le impostazioni del primo blocco (blocco genesis). Poi, crea un blocco Genesis e inizia geth. Quando si è in modalità console, l'avvio ha successo. Sono specificate diverse opzioni e la spiegazione è riassunta di seguito. - networkid, che si collega a un nodo pubblico.
- Port, che è una porta per la riserva. L'ho cambiato in un numero a 4 cifre.
- nodiscover, che è un'impostazione che impedisce ai nodi di visualizzare automaticamente.
- datadir, che specifica la directory in cui la blockchain memorizza i dati.
- Console, che avvia la console contemporaneamente all'avvio.
Ok, preparatevi per la prossima chiamata di PHP, ma prima facciamo ulteriori preparazioni sul lato geth. 3. Preparare la chiamata JSON-RPCAccesso da PHP tramite JSON-RPC. Qui allestiamo il quartiere. Per prima cosa, verranno ottenute le informazioni aggiornate sul conto. Usiamo anche la console geth che abbiamo lanciato l'ultima volta. Non abbiamo ancora creato un account, quindi è necessario crearlo. L'account è ora creato. Abbiamo impostato tutto in modo che le ricompense possano essere guadagnate mentre si mina. Poi, dato che il nodo attuale non permette chiamate RPC, aggiungi un'opzione e riavvia. Facciamo prima finire i geth. Aggiungiamo opzioni e ricominciamo Sono state aggiunte diverse opzioni per RPC. La spiegazione è la seguente. - RPC, permettendo a RPC di standby.
- rpcaddr, un indirizzo IP per le alternative RPC.
- rpcport, la porta usata per ascoltare RPC. Ho abbassato il numero di porta a 4 cifre.
- rpccorsdomain, un dominio che consente l'accesso a RPC. Nota che quando si pubblica un nodo, se è "*", permetterà tutto.
Il lato nodo è ora pronto. La prossima chiamata da PHP. 4. Accesso da PHPInfine, perché accedere da PHP, ma averli, perché è piuttosto difficile e può essere usato quando scrivi codiceQuesto。 Come puoi vedere nel README, devi solo creare una classe. Usiamolo mettendolo nella stessa cartella dello script di test. Quando eseguiamo questo script, dovrebbe esserci una lista di account come segue.
Se non riesci a connetterti, controlla le impostazioni della porta, ecc. Finora l'abbiamo spiegato brevemente, ma non ti sembra sorprendentemente facile sviluppare con PHP? Quando si tratta di smart contract, la questione si complica un po', e ne parleremo più avanti. Inoltre, se vuoi vedere direttamente come viene usata la blockchain in Ethereum, puoi dare un'occhiata a questohttp://xc.hubwiz.com/course/5b36629bc02e6b6a59171de3?affid=825itsvse, introduce principalmente l'uso di PHP per l'interazione dello sviluppo di smart contract, creazione di account, trading, trasferimenti, sviluppo di token, filtri ed eventi, ecc.
|