2 回答

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個(gè)贊
這取決于您如何定義在線。Http 是一種無狀態(tài)協(xié)議。
但是,您可以將在線定義為在過去五分鐘內(nèi)處于活動狀態(tài)。這樣你就可以實(shí)現(xiàn)這樣的功能:
public function isOnline(): bool
{
return $this->last_activity->gt(Carbon\Carbon::now()->subMinutes(5));
}
還要確保將 last_activity 標(biāo)記為日期:
protected $dates = ['last_activity'];
隨著您的應(yīng)用程序的增長,我會考慮另一種解決方案,而不是將所有用戶從數(shù)據(jù)庫加載到內(nèi)存中。

TA貢獻(xiàn)1752條經(jīng)驗(yàn) 獲得超4個(gè)贊
我想“在線”是指使用網(wǎng)站并與之互動。您必須確定一個(gè)時(shí)間間隔,在該時(shí)間間隔內(nèi),用戶可以被視為“在線”或“離線”并且不再進(jìn)行交互。也許……10分鐘?將“上次活動”字段與當(dāng)前時(shí)間進(jìn)行比較,以查看它們是否處于活動狀態(tài)。用于示例Carbon::now()獲取當(dāng)前時(shí)間并進(jìn)行比較。
- 2 回答
- 0 關(guān)注
- 255 瀏覽
添加回答
舉報(bào)