我想读取这个流:wss://stream.binance.com:9443/ws/btcusdt@trade 并将数据保存到数据库,以便稍后处理。
因为这是连续的数据流,所以我不知道在哪里调用函数或如何处理它。
我正在使用这个 PHP 库:
https://github.com/jaggedsoft/php-binance-api
具体来说,是这段代码:
$api->trades(["BNBBTC"], function($api, $symbol, $trades) {
echo "{$symbol} trades update".PHP_EOL;
print_r($trades);
});
我知道如何将数据保存到数据库中,但是我不知道如何调用这个函数。
public function x(){
$api = new API("api", "secret";
$api->trades(["BTCUSDT"], function($api, $symbol, $trades) {
$data = new BinanceData();
$data->symbol = $symbol;
$data->price = $trades['price'];
$data->binance_timestamps = $trades['timestamp'];
$data->maker = $trades['maker'];
$data->quantity = $trades['quantity'];
$data->save();
});
}
当我访问/x路由时,我直接调用这个函数:
Route::get('/x', [BinanceController::class, 'x']);
问题是如何在Laravel中后台调用此函数,以便我不必访问任何路由或其他内容。
谢谢。