完全に間違った論理。 $_SESSIONはユーザーごとのものです。 1人のユーザーのセッションは、他のユーザーのセッションと共有されません。考えてみてください。PHPで作成されたオンライン銀行で、すべてが1つの$ _SESSIONを共有しています。誰もが、すべてのアカウントの詳細を見ることができます。
標準のPHPファイルベースのセッションを使用していると仮定すると、保存されているディレクトリにあるセッションファイルを数えることができます。例:
$users = count(glob(session_save_path() . '/*'));
これはセッションファイルをカウントするだけであることに注意してください。間違いなく、まだガベージコレクションされていない古い/デッドセッションが含まれます。実際の「現在オンライン」が必要な場合は、各セッションファイルを解析し、その内容を調べる必要があります。