Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Langkah terperinci tentang cara mendapatkan data Ethereum dalam PHP

Langkah terperinci tentang cara mendapatkan data Ethereum dalam PHP

PHPz
PHPzasal
2023-04-03 11:15:051183semak imbas

Dengan populariti Ethereum dalam dunia blockchain, semakin ramai orang memberi perhatian kepada cara mendapatkan data Ethereum. Selain melihat rekod transaksi Ethereum dan menyekat maklumat melalui pelayar Ethereum, anda juga boleh mendapatkan data Ethereum melalui bahasa PHP. Artikel ini akan memperkenalkan cara menggunakan PHP untuk mendapatkan data Ethereum.

Pertama, kita perlu menggunakan API nod Ethereum untuk berkomunikasi dengan rangkaian Ethereum. API nod Ethereum ialah antara muka yang disediakan oleh pelanggan Ethereum, yang boleh mendapatkan data Ethereum melalui API dalam format HTTP atau WebSocket. Pada masa ini, API nod Ethereum yang lebih popular termasuk Infura, Etherscan, dsb. Di sini kami mengambil API Infura sebagai contoh untuk menggambarkan.

  1. Daftar dan dapatkan token akses untuk Infura API

Kami perlu terlebih dahulu mendaftar akaun untuk Infura API dan mencipta projek untuk mendapatkan token tersebut. Alamat pendaftaran ialah: https://infura.io/register Selepas pendaftaran berjaya, kami boleh membuat projek dalam konsol untuk mendapatkan token.

  1. Pasang perpustakaan Ethereum-PHP

Kita perlu menggunakan perpustakaan Ethereum-PHP untuk menghantar permintaan HTTP atau WebSocket untuk berkomunikasi dengan API Infura. Gunakan Komposer untuk memasang perpustakaan Ethereum-PHP ialah alat pengurusan pakej untuk PHP yang boleh mengurus kebergantungan projek kami. Kami boleh menggunakan arahan berikut untuk memasang perpustakaan Ethereum-PHP:

composer require ethereum-php/ethereum-php
  1. Dapatkan maklumat blok Ethereum

Kami boleh menggunakan antara muka yang disediakan oleh Ethereum-PHP perpustakaan untuk Dapatkan maklumat tentang blok Ethereum. Berikut ialah contoh kod untuk mendapatkan blok terbaharu:

$infuraUrl = "https://mainnet.infura.io/v3/your-infura-project-id"; // Infura API 的 URL
$ethereum = new \Ethereum\RPC($infuraUrl); // 创建 Ethereum-PHP 实例
$latestBlock = $ethereum->eth_blockNumber(); // 获取最新区块号
$latestBlockNumber = hexdec($latestBlock); // 转换为十进制的区块号
$block = $ethereum->eth_getBlockByNumber("0x" . dechex($latestBlockNumber)); // 获取 Block 对象

Dalam kod di atas, kita perlu menggantikan URL API Infura dan ID projek kita sendiri dengan nilai tertentu terlebih dahulu. Kemudian, kami mencipta contoh Ethereum-PHP dan menggunakan fungsi eth_blockNumber untuk mendapatkan nombor blok terkini dan menukarnya kepada nombor perpuluhan. Akhir sekali, gunakan fungsi eth_getBlockByNumber untuk mendapatkan objek blok terkini.

  1. Dapatkan rekod transaksi Ethereum

Kami boleh menggunakan antara muka yang disediakan oleh perpustakaan Ethereum-PHP untuk mendapatkan rekod transaksi Ethereum. Berikut ialah contoh kod untuk mendapatkan transaksi terkini:

$infuraUrl = "https://mainnet.infura.io/v3/your-infura-project-id"; // Infura API 的 URL
$ethereum = new \Ethereum\RPC($infuraUrl); // 创建 Ethereum-PHP 实例
$latestBlock = $ethereum->eth_blockNumber(); // 获取最新区块号
$latestBlockNumber = hexdec($latestBlock); // 转换为十进制的区块号
$block = $ethereum->eth_getBlockByNumber("0x" . dechex($latestBlockNumber)); // 获取最新的区块
$transaction = $ethereum->eth_getTransactionByHash($block->transactions[0]); // 获取最新一笔交易

Dalam kod di atas, kami mula-mula mendapatkan objek Blok blok terkini seperti di atas, dan kemudian gunakan fungsi eth_getTransactionByHash untuk mendapatkan objek Blok daripada blok terkini Transaksi objek transaksi pertama.

Selain kod sampel di atas, perpustakaan Ethereum-PHP juga menyediakan antara muka yang kaya untuk mendapatkan semua transaksi blok, baki alamat, ABI dan kod kontrak pintar dan maklumat lain.

Ringkasan

Artikel ini menerangkan secara terperinci cara menggunakan PHP untuk mendapatkan data Ethereum. Mula-mula kita perlu mendaftar akaun API Infura dan membuat projek untuk mendapatkan token. Kemudian, kami memasang perpustakaan Ethereum-PHP melalui Komposer dan menggunakan antara muka yang disediakan oleh perpustakaan Ethereum-PHP untuk mendapatkan data Ethereum. Jika anda ingin mengetahui lebih lanjut tentang penggunaan perpustakaan Ethereum-PHP, anda boleh merujuk kepada dokumentasi rasmi perpustakaan Ethereum-PHP.

Atas ialah kandungan terperinci Langkah terperinci tentang cara mendapatkan data Ethereum dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn