<?php
require_once __DIR__ . '/../../../vendor/autoload.php';
// Этот класс Message лучше вынести в отдельный файл.
class Message {
public array $messages = [];
public function addMessage(string $msg) {
$this->messages[] = $msg;
}
}
$message = new Message();
$client = new \Binance\Websocket\Spot();
$callbacks = [
'message' => function ($conn, $msg) use ($message) {
$message->addMessage($msg);
echo $msg.PHP_EOL;
},
'ping' => function ($conn, $msg) use ($message) {
$message->addMessage($msg);
echo "received ping from server".PHP_EOL;
}
];
# single pair
$client->miniTicker($callbacks, 'btcusdt');
var_dump($message->messages);
Поэтому, настоятельно рекомендую вам не использовать ни какой фреймворк до тех пор, пока он вам прямо позарез не понадобится, и вы сможете чётко и конкретно аргументировать, зачем именно этот фреймворк вам нужен.
Для логов возьмите стандартный пакет slog, фреймворк не нужен.
Конфиги пока просто на самом языке напишите в виде структурок, и берите данные из тех же переменных окружения. А уже потом найдёте что-то более подходящее именно для вас.