


Comment utiliser PHP pour développer le système de paiement d'Ethereum
Cet article concerne le développement PHP du système Ethereum. Il présente principalement l'utilisation de PHP pour le développement et l'interaction de contrats intelligents, la création de comptes, les transactions, les transferts, le développement de jetons, les filtres et les événements, etc.
Quand j'ai pensé pour la première fois à mettre en œuvre des paiements via crypto-monnaie, j'ai examiné les solutions disponibles comme Stripe. Je pense que le problème avec Stripe est qu'il autorise uniquement les paiements Bitcoin avec des comptes marchands américains, ce n'est donc pas une option pour moi. Dans le monde Ethereum, la situation semble encore pire. Il existe des services plus récents mais ils veulent tous partager le gâteau.
Alors, pour créer un système de paiement Ethereum à partir de zéro, de quoi avons-nous besoin ?
Un serveur web exécutant PHP.
Au moins un nœud de parité dans un réseau privé avec RPC activé.
Un générateur d'adresses virtuelles sur un serveur réseau, tel que vanity-eth.
Alors, comment ça marche ?
Calculez le prix de l'ETH en utilisant le prix actuel de Coinbase ou de l'API Kraken.
Utilisez un générateur factice pour générer des paires d'adresses et crypter ou transférer la clé privée vers un autre serveur.
Affichez l'adresse générée au client et vérifiez l'adresse toutes les quelques secondes si le paiement est reçu.
Cela ne semble poser aucun problème en théorie, alors construisons-le.
Étape 1 : Configurer le serveur
Nous utiliserons vanity-eth dans nodejs pour générer l'adresse.
npm install -g vanity-eth@1.0.4"
Après avoir installé vanity-eth sur Windows :
Quelques nœuds Etherum sont également requis. J'utilise Parity parce que c'est rapide et fiable.
Démarrez-le avec ces paramètres, mais n'exposez pas les nœuds directement à Internet, gardez-les derrière un pare-feu sans redirection de port.
parity --jsonrpc-interface 0.0.0.0 --jsonrpc-hosts="all" --auto-update=all --jsonrpc-cors null
Journal de parité de la synchronisation terminée :
Pour un déploiement plus rapide, vous pouvez utiliser des conteneurs Parity Docker. Les données peuvent également être enregistrées afin que vous n'ayez pas à resynchroniser à chaque fois que le conteneur est refait.
Étape 2 : Écrire la classe de paiement
Créez d'abord un dossier appelé libs
et clonez-y le dépôt php-ethereum. Le projet ethereum-php est un bon wrapper pour la classe json-rpc.
Ensuite, nous utilisons la classe suivante et l'enregistrons sous ethpay.php. C'est la logique principale du traitement des paiements. Vous pouvez l'utiliser pour :
Générer des paires d'adresses
Vérifier le solde (en attente et complété)
Convertir de WEI en ETH
<?php define('RPC_IP','127.0.0.1'); define('RPC_PORT',8545); require 'libs/ethereum-php/ethereum.php'; $e = new EthPay(); class EthPay { private $eth; //让我们建立与parity节点的连接 function __construct() { $this->eth = new Ethereum(RPC_IP, RPC_PORT); if(!$this->eth->net_version()) die('RPC ERROR'); } / * *得到一个地址的余额, *来自parity的余额以十六进制形式出现在wei中 *使用bc数学函数转换它 * / function getBalanceOfAddress($addr) { $eth_hex = $this->eth->eth_getBalance($addr, 'latest'); $eth = $this->wei2eth($this->bchexdec($eth_hex)); $pending_hex = $this->eth->eth_getBalance($addr, 'pending'); $pending = $this->wei2eth($this->bchexdec($pending_hex)); return array('balance'=>$eth,'pending'=>$pending); } function getCurrentPrice($currency='USD') { $data = json_decode(file_get_contents('https://api.coinbase.com/v2/prices/ETH-'.$currency.'/spot'),true); return $data['data']['amount']; } /* *我们将使用vanityeth生成私钥对 * npm install -g vanity-eth *我们必须重新格式化输出字符串以用作JSON * / function genPair() { exec('vanityeth', $outputAndErrors, $return_value); $answer = implode(NULL,$outputAndErrors); $answer = str_replace('address:','"address":',$answer); $answer = str_replace('privKey:','"privKey":',$answer); $answer = str_replace('\'','"',$answer); return json_decode($answer,true); } //以下功能用于转换和处理大数字 function wei2eth($wei) { return bcp($wei,1000000000000000000,18); } function bchexdec($hex) { if(strlen($hex) == 1) { return hexdec($hex); } else { $remain = substr($hex, 0, -1); $last = substr($hex, -1); return bcadd(bcmul(16, $this->bchexdec($remain)), hexdec($last)); } } }
Dernière étape : Intégrer à votre site Web
En fonction de votre service, il existe plusieurs façons de procéder à cette opération.
Chez API Heaven, nous fournissons à chaque client une adresse ETH où les fonds peuvent être déposés. Le cronjob vérifie toutes les adresses des clients toutes les minutes pour détecter les changements. S'ils ajoutent de l'ETH à l'adresse, le solde est converti en quota API, de sorte que nos clients n'ont même pas besoin de se connecter au site pour ajouter des fonds.
Exemple d'intégration dans API Heaven :
Une autre approche consiste à calculer un prix fixe et à l'enregistrer dans la session utilisateur. Le client doit payer sur le site Web et vous devez utiliser AJAX pour interroger le paiement reçu. Si le montant total est reçu, la vente est déclenchée sur le backend.
Mieux encore, vous n’avez pas besoin d’un service externe pour intégrer le système de paiement Ethereum sur votre site Web. Venez apprendre et jouer à Ethereum ensemble.
Recommandations associées :
Comment développer un système de paiement en ligne avec PHP
Comment développer un système de noms de domaine virtuels
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds





Le délai de recharge de la monnaie numérique varie en fonction de la méthode: 1. Le transfert bancaire prend généralement 1 à 3 jours ouvrables; 2. Recharge des cartes de crédit ou plates-formes de paiement tierces dans quelques minutes à quelques heures; 3. Le temps de recharge du transfert de monnaie numérique est généralement de 10 minutes à 1 heure en fonction du temps de confirmation de la blockchain, mais il peut être retardé en raison de facteurs tels que la congestion du réseau.

Le processus de transaction de la chaîne quantique (QTUM) comprend trois étapes: préparation, achat et vente préliminaires. 1. Préparation: sélectionnez un échange conforme, enregistrez un compte, effectuez une vérification d'identité et configurez un portefeuille. 2. Acheter des chaînes quantiques: recharge des fonds, trouver des paires de trading, des commandes de place (commandes du marché ou limiter les commandes) et confirmer les transactions. 3. Vendre des chaînes quantiques: entrez la page de négociation, sélectionnez la paire de négociation et le type de commande (commande de marché ou commande de limite), confirmez la transaction et retirez de l'argent.

Échanges qui prennent en charge les transactions transversales: 1. Binance, 2. UniSwap, 3. Sushiswap, 4. Curve Finance, 5. Thorchain, 6. 1inch Exchange, 7. DLN Trade, ces plateformes prennent en charge les transactions d'actifs multi-chaînes via diverses technologies.

Les échanges jouent un rôle essentiel sur le marché des crypto-monnaies d'aujourd'hui. Ce ne sont pas seulement des plateformes pour les investisseurs pour négocier, mais aussi des sources importantes de liquidité du marché et la découverte des prix. Les plus grands échanges de devises virtuels au monde se classent parmi les dix premiers, et ces échanges sont non seulement bien en avance dans le volume des échanges, mais présentent également leurs propres avantages dans l'expérience utilisateur, la sécurité et les services innovants. Les échanges qui dépassent la liste ont généralement une grande base d'utilisateurs et une influence approfondie du marché, et leur volume de trading et leurs types d'actifs sont souvent difficiles à atteindre par d'autres échanges.

Les dix principales plates-formes d'échange de contrats de crypto-monnaie en 2025 sont: 1. Binance Futures, 2. Okx Futures, 3. Gate.io, 4. Huobi Futures, 5. Bitmex, 6. Bybit, 7. Deribit, 8. Bitfinex, 9. Coinflex, 10. Phemex, ces plates-formes sont largement reconnues pour leur haute liquidité, diverses fonctions commerciales diversifiées.

WorldCoin (WLD) se démarque sur le marché des crypto-monnaies avec ses mécanismes uniques de vérification biométrique et de protection de la vie privée, attirant l'attention de nombreux investisseurs. WLD a permis de se produire avec remarquablement parmi les Altcoins avec ses technologies innovantes, en particulier en combinaison avec la technologie d'Intelligence artificielle OpenAI. Mais comment les actifs numériques se comporteront-ils au cours des prochaines années? Prédons ensemble le prix futur de WLD. Les prévisions de prix de 2025 WLD devraient atteindre une croissance significative de la WLD en 2025. L'analyse du marché montre que le prix moyen du WLD peut atteindre 1,31 $, avec un maximum de 1,36 $. Cependant, sur un marché baissier, le prix peut tomber à environ 0,55 $. Cette attente de croissance est principalement due à WorldCoin2.

La chaîne quantique (QTUM) est une plate-forme de contrat intelligente décentralisée open source et un protocole de transmission de valeur. 1. Caractéristiques techniques: plate-forme de contrat SMART PO compatible BIP, combinant les avantages de Bitcoin et Ethereum, introduit des facteurs hors chaîne et améliore la flexibilité des mécanismes consensus. 2. Principe de conception: Réalisez l'interaction des données sur chaîne et hors chaîne par le biais de contrats de contrôle principaux, soyez compatible avec différentes technologies de blockchain, des mécanismes de consensus flexibles et envisagez la conformité de l'industrie. 3. Équipe et développement: une équipe internationale dirigée par Shuai Chu, 80% des pièces quantiques sont utilisées dans la communauté, et 20% récompensent l'équipe et les investisseurs. Les chaînes quantiques sont échangées sur les échanges Binance, Gate.io, OKX, BitHumb et Matcha.

Le classement du «plus ancien» des Currences virtuels est le suivant: 1. Bitcoin (BTC), publié le 3 janvier 2009, est la première monnaie numérique décentralisée. 2. Litecoin (LTC), sorti le 7 octobre 2011, est connu sous le nom de "version légère de Bitcoin". 3. Ripple (XRP), publié en 2011, est conçu pour les paiements transfrontaliers. 4. Dogecoin (DOGE), publié le 6 décembre 2013, est une "pièce de mèmes" basée sur le code Litecoin. 5. Ethereum (ETH), publié le 30 juillet 2015, est la première plate-forme à prendre en charge les contrats intelligents. 6. Tether (USDT), publié en 2014, est le premier stablecoin à être ancré au dollar américain 1: 1. 7. Ada,
