Dette innlegget ble sist redigert av malakashi 2018-08-25 kl. 23:11
Siden i fjor har vi utviklet en blockchain-virksomhet. Jeg brukte nylig Ethereum og PHP, så jeg tenkte vi burde snakke om dette temaet. Her er et utgangspunkt: - 1. Forstå blokkjede
- 2. Ha forståelse for programmeringsspråk
Viktige punkter fra denne artikkelen: - 1. Utviklingsmiljø
- 2. Introduksjon av Ethereum
- 3. Forbered JSON-RPC-kallet
- 4. Tilgang fra PHP
1. UtviklingsmiljøVi kommer til å bruke Ubuntu 14.04 LTS. Etter installasjon av operativsystemet, skriv inn de forhåndsbestemte kommandoene. Etter det satte jeg opp SSH, iptables, ntp, osv. Så er det Apache + PHP. PHP-versjonen vil være 5.5.
2. Introduksjon av EthereumDenne gangen vil vi bruke en Ethereum-node laget i GO-språket, go-ethereum forkortet geth. La oss legge til et repository først. Etter det, bare installer det. Lanser Geth så snart installasjonen er fullført. Først, lag en datakatalog og beskriv innstillingene for den første blokken (genesisblokken). Deretter lager du en Genesis-blokk og starter geth. Når du er i konsollmodus, lykkes oppstarten. Flere alternativer er spesifisert, og forklaringen oppsummeres nedenfor. - networkid, som kobler til en offentlig node.
- Port, som er en port for standby. Jeg endret det til et firesifret nummer.
- NoDiscover, som er en innstilling som forhindrer at noder automatisk vises.
- Datadir, som spesifiserer katalogen der blokkjeden lagrer data.
- konsoll, som starter konsollen samtidig som den starter.
Ok, forbered deg på neste PHP-kall, men før det la oss forberede oss mer på geth-siden. 3. Forbered JSON-RPC-kalletTilgang fra PHP via JSON-RPC. Her skal vi sette opp nabolaget. Først vil informasjon om driftskontoen bli innhentet. Vi bruker også geth-konsollen som vi lanserte sist. Vi har ikke opprettet en konto ennå, så det er nødvendig å opprette den. Kontoen er nå opprettet. Vi har satt det opp slik at belønninger kan tjenes mens man miner. Deretter, siden den nåværende noden ikke tillater RPC-kall, legg til et alternativ og start den på nytt. La oss avslutte geth først. La oss legge til alternativer og starte på nytt Flere alternativer for RPC er lagt til. Forklaringen er som følger. - rpc, som lar RPC stå i standby.
- rpcaddr, en IP-adresse for RPC-alternativer.
- rpcport, porten som brukes til å lytte til RPC. Jeg senket portnummeret til 4 sifre.
- rpccorsdomain, et domene som gir tilgang til RPC. Merk at når du publiserer en node, hvis den er "*", vil den tillate alt.
Nodesiden er nå klar. Neste blir en telefon fra PHP. 4. Tilgang fra PHPTil slutt, hvorfor få tilgang fra PHP, men ha dem, fordi det er ganske vanskelig og kan brukes når du skriver kodeDenne。 Som du kan se i README-en, trenger du bare å opprette en klasse. La oss bruke det ved å legge det i samme mappe som testskriptet. Når vi kjører dette skriptet, skal det være en liste over kontoer som følger.
Hvis du ikke får koblet til, sjekk portinnstillingene osv. Så langt har vi forklart det kort, men føles det ikke overraskende enkelt å utvikle med PHP? Når det gjelder smarte kontrakter, blir det litt mer komplisert, og vi skal skrive om det senere. Hvis du også vil se direkte hvordan blokkjede brukes i Ethereum, kan du sjekke ut dettehttp://xc.hubwiz.com/course/5b36629bc02e6b6a59171de3?affid=825itsvse, introduserer hovedsakelig bruk av PHP for interaksjon med utvikling av smarte kontrakter, kontoopprettelse, handel, overføring, tokenutvikling, filtre og hendelser, osv.
|