header("Access-Control-Allow-Origin:*");
header('X-Accel-Buffering: no');
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
ob_end_clean();
ob_implicit_flush(1);

$idx = 0;
while(1) {
    $idx++;
    $data = [
        'id' => $idx,
        'timestamp' => time(),
        'message' => '当前时间是:' . date('Y-m-d H:i:s')
    ];
    returnData($data, 'message', $idx);
    sleep(1);
}


function returnData($data, $event = 'message', $id = 0, $retry = 0) {
    $str = '';
    if ($id > 0) {
        $str .= "id: {$id}" . PHP_EOL;
    }
    if ($event) {
        $str = "event: {$event}" . PHP_EOL;
    }
    if ($retry > 0) {
        $str .= "retry: {$retry}" . PHP_EOL;
    }
    if (is_array($data)) {
        $data = json_encode($data);
    }
    $str .= "data: {$data}" . PHP_EOL;
    $str .= PHP_EOL;
    echo $str;
}
var es = new EventSource('/message.php');
es.addEventListener('message', function (res) {
    let data = JSON.parse(res.data);
    $("#esContent").text(data.message)
})