php-binance-api快速开始:如何用3行代码获取币安全市场行情价格

php-binance-api快速开始:如何用3行代码获取币安全市场行情价格

【免费下载链接】php-binance-api PHP Binance API is an asynchronous PHP library for the Binance API designed to be easy to use. https://github.com/binance-exchange/php-binance-api 【免费下载链接】php-binance-api 项目地址: https://gitcode.com/gh_mirrors/ph/php-binance-api

php-binance-api 是一款开源的异步 PHP 库,专为对接币安(Binance)API 设计,帮你用极简代码获取币安全市场行情价格、K线、深度数据和 WebSocket 实时推送,还支持下单、止盈止损等交易功能,是 PHP 开发者接入币安市场的上手最快的选择。

php-binance-api 安装指南:最快完成安装的方法

方式一:Composer 一键安装(推荐)

在你的项目目录下执行:

composer require jaggedsoft/php-binance-api

方式二:Git 克隆仓库

git clone https://gitcode.com/gh_mirrors/ph/php-binance-api

克隆后,项目根目录的 php-binance-api.php 就是核心库文件,examples/ 目录下有全部功能示例。

环境要求:PHP ≥ 7.4,并安装 ext-curl 扩展(见 composer.json)。

配置 API Key(3 种方式)

只查行情可以不配 Key;涉及账户和交易时才需要,建议放在主目录配置文件,避免密钥写进代码:

mkdir -vp ~/.config/jaggedsoft/
cat > ~/.config/jaggedsoft/php-binance-api.json << EOF
{
    "api-key": "<api key>",
    "api-secret": "<secret>"
}
EOF

更多配置方式(指定配置文件、直接传参、代理设置)可参考 examples/home_directory_config.phpexamples/proxy_config.php

require 'vendor/autoload.php';

// 1. 读取主目录配置
$api = new Binance\API();
// 2. 指定配置文件
$api = new Binance\API("somefile.json");
// 3. 直接传入 key 和 secret
$api = new Binance\API("<api key>", "<secret>");

3行PHP代码,获取币安全市场行情价格

这是本文的重点——只需要 3 行代码,就能拿到币安所有交易对的最新价格(参考 examples/get_prices.php):

require 'php-binance-api.php';
$api = new Binance\API();
$ticker = $api->prices();   // 返回全部交易对最新价格

运行后你会得到一个以交易对为键、最新价格为值的数组:

Array
(
    [BTCUSDT] => 6028.95000000
    [ETHUSDT] => 304.98000000
    [BNBBTC]  => 0.00021479
    [LTCBTC]  => 0.00967400
    ...
)

获取指定交易对价格:price() 方法实战

如果只关心某一只币(比如 BNB),用 price() 即可,一行返回:

$price = $api->price("BNBBTC");
echo "Price of BNB: {$price} BTC.".PHP_EOL;
// 输出:Price of BNB: 0.00021479 BTC.

常用行情接口一览表

方法作用参考示例
$api->prices()获取全部交易对最新价格examples/get_prices.php
$api->price("BNBBTC")获取单个交易对最新价格examples/get_prices.php
$api->prevDay("BNBBTC")24小时涨跌统计(含涨跌幅)examples/prevday.php
$api->candlesticks("BNBBTC", "5m")K线/蜡烛图数据examples/candles.php
$api->depth("ETHBTC")市场深度(买卖盘)examples/depth.php
$api->bookPrices()全部买一/卖一价格examples/book_prices.php

K线数据支持 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, 1M 等周期(见 examples/candles.php):

$ticks = $api->candlesticks("BNBBTC", "5m");

24小时涨跌统计,一行代码拿到涨跌幅百分比:

$prevDay = $api->prevDay("BNBBTC");
echo "BNB 24h change: ".$prevDay['priceChangePercent']."%".PHP_EOL;

WebSocket 实时行情推送:miniTicker 与 kline 用法

想要"实时"行情而不是轮询?php-binance-api 内置 WebSocket 支持,传入一个回调函数即可持续接收数据(见 examples/web_socket_miniticker.php):

$api->miniTicker(function($api, $ticker) {
    print_r($ticker); // 所有交易对最新成交、开高低收、成交量
});

实时 K线更新,适合做图表面板(见 examples/web_socket_kline.php):

$api->chart(["BNBBTC"], "15m", function($api, $symbol, $chart) {
    echo "{$symbol} chart update\n";
    print_r($chart);
});

其他实时数据流还包括交易记录(trades)、单交易对行情(ticker)、深度缓存(depthCache)和用户数据推送(userData),示例分别位于 examples/web_socket_trades.phpexamples/web_socket_depth.phpexamples/web_socket_userdata.php

常见问题排查:限流、时间同步与测试网

接口限流(Rate Limiting)

高频调用容易触发限流,官方提供了限流包装类(beta),两行代码即可启用:

$api = new Binance\API();
$api = new Binance\RateLimiter($api);

实现见 php-binance-api-rate-limiter.php,用法见 examples/ratelimiter.php

时间不同步报错

如果看到 Timestamp ... outside of the recvWindow-1021 错误,说明系统时间和服务器偏差超过 1 秒,先同步系统时间,或调用:

$api->useServerTime(); // 在任何请求之前执行

用测试网练手

在 Binance Testnet 申请专用 Key,配置文件加上 "use-testnet": true 即可安全演练交易,示例见 examples/orders_testnet.php

安全提醒:API Secret 请勿写进代码或提交到版本库,优先使用主目录配置文件;生产环境建议只开通"现货交易"权限并绑定 IP 白名单。

参考文件清单

3 行代码已经跑通? 下一步可以顺着 examples/ 目录探索交易下单、止盈止损与实时深度图,把币安行情数据真正搬进你的 PHP 项目 🚀

【免费下载链接】php-binance-api PHP Binance API is an asynchronous PHP library for the Binance API designed to be easy to use. https://github.com/binance-exchange/php-binance-api 【免费下载链接】php-binance-api 项目地址: https://gitcode.com/gh_mirrors/ph/php-binance-api

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值