Fonksiyonunuza try-catch bloğu ekleyerek hataları yakalayıp loglamayı deneyin.

function csServerSendCommand(string $query)
{
    try {
        $easyGRcon = new EasyGRcon('cstrike', [
            'host' => CS_IP,
            'port' => CS_QPORT,
            'password' => CS_PASSWORD,
            'timeout' => 30
        ]);
        return $easyGRcon->execute($query);
    } catch (Exception $e) {
        error_log("Hata: " . $e->getMessage());
        return null;
    }
}
Sunucunuzda çok fazla oyuncu varsa tüm verileri tek bir sorguda çekmek yerine birkaç sorguya bölebilirsiniz:

function csServerSendCommand(string $query, int $offset = 0, int $limit = 10)
{
    $easyGRcon = new EasyGRcon('cstrike', [
        'host' => CS_IP,
        'port' => CS_QPORT,
        'password' => CS_PASSWORD,
        'timeout' => 30
    ]);
    return $easyGRcon->execute($query . " LIMIT $limit OFFSET $offset");
}

// Kullanım:
$allPlayers = [];
$offset = 0;
$limit = 10;

do {
    $players = csServerSendCommand("your_query_here", $offset, $limit);
    $allPlayers = array_merge($allPlayers, $players);
    $offset += $limit;
} while (count($players) == $limit);
Kolay gelsin.