PHP WebShell
Текущая директория: /var/www/bitcardoApp/models/crypto
Просмотр файла: tron_balance.php
<?php
namespace Models\Crypto;
class TronBalance
{
private $config;
public function __construct()
{
$this->config = include __DIR__ . '/../../config/tron_config.php';
}
/**
* Get TRX Balance (raw Sun)
*/
public function getTrxBalance($address)
{
$url = $this->config['network'] . "/v1/accounts/{$address}";
$response = $this->makeRequest($url);
if (!isset($response['data'][0]['balance'])) {
return 0;
}
return $response['data'][0]['balance']; // RAW Sun units
}
/**
* Get USDT (TRC20) token balance (raw integer)
*/
public function getUsdtBalance($address)
{
$contract = $this->config['usdt_contract'];
// TRC20 balance endpoint
$url = $this->config['network'] . "/v1/accounts/{$address}/assets?limit=200";
$response = $this->makeRequest($url);
if (!isset($response['data'])) {
return 0;
}
foreach ($response['data'] as $asset) {
if (isset($asset['key']) && $asset['key'] === $contract) {
return $asset['value']; // RAW integer amount
}
}
return 0;
}
/**
* Shared request handler with API key
*/
private function makeRequest($url)
{
$ch = curl_init();
$headers = [
"TRON-PRO-API-KEY: " . $this->config['api_key']
];
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => $headers,
]);
$result = curl_exec($ch);
curl_close($ch);
return json_decode($result, true);
}
}
Выполнить команду
Для локальной разработки. Не используйте в интернете!