Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?

Hiện tại, gói này chỉ hỗ trợ loại 'cơ sở dữ liệu' để lưu trữ phiên. mở của bạn. env và thay đổi trình điều khiển phiên thành cơ sở dữ liệu

SESSION_DRIVER=database

và cũng đảm bảo xuất bản bảng phiên mặc định với

php artisan session:table

php artisan migrate

Nhà cung cấp và bí danh

Để sử dụng lớp Active, hãy tham khảo không gian tên đầy đủ của nhà cung cấp hoặc chỉ cần nhập lớp ở đầu tệp mà bạn muốn sử dụng lớp đó trong. Ví dụ

\Rainwater\Active\Active::users();

hoặc

use Rainwater\Active\Active;
Active::users();

Gói này cũng bao gồm một nhà cung cấp và bí danh để giúp mọi việc dễ dàng hơn. Để thiết lập đúng cách, hãy mở

SESSION_DRIVER=database
2 và thêm phần này vào mảng nhà cung cấp của bạn

Rainwater\Active\ActiveServiceProvider::class

và cái này vào mảng bí danh của bạn

'Active' => Rainwater\Active\ActiveFacade::class

Cách sử dụng

Nắm bắt các hoạt động gần đây nhất

Nhập mặt tiền Hoạt động ở trên cùng và sau đó thực hiện một truy vấn đơn giản

// Import at the top
use Active;


// Find latest users
$users = Active::users()->get();

// Loop through and echo user's name
foreach ($users as $activity) {
    echo $activity->user->name . '
'; }

Theo mặc định, phương thức 'người dùng' sẽ trả về những người dùng đã hoạt động trong 5 phút qua. Nếu bạn muốn hiển thị một khoảng thời gian khác, hãy sử dụng các chức năng sau

________số 8

Tất cả các chức năng được liệt kê ở trên đều trả về Truy vấn Eloquent, vì vậy bạn có thể làm bất cứ điều gì với kết quả sẽ làm với bất kỳ mô hình nào khác

  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    the_steff
    Thành viên cấp dưới
  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?

  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?

  • Bài viết. 17
    Chủ đề. 8
    Đã tham gia. Tháng 4 năm 2020

    Danh tiếng. 0

#1

07-07-2021, 02. 32 giờ sáng


Xin chào.
Tôi đang cố gắng liệt kê dữ liệu tất cả các phiên đang hoạt động để hiển thị một trang nơi người dùng có thể tham khảo tất cả các thành viên được kết nối với trang web. Điều đó có thể không?
Tôi để Trình điều khiển FileHandler mặc định. Tài liệu dường như nói rằng nó có thể chậm. nhưng không quá nhiều.
Giao diện phiên dường như chỉ dành riêng cho việc thao túng một phiên chỉ liên quan đến một người dùng cụ thể[url=https. // người viết mã. com/user_guide/libraries/sessions. html#id16][/url].

Tôi cố gắng tìm một số bài đăng khác thảo luận về vấn đề (?) phổ biến này nhưng tôi không tìm thấy gì ngoại trừ chức năng "alluserdata" thuộc về codeigniter 3.

Cảm ơn.

  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    MGatner
    @xxxx[{.
  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?

  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?

  • Bài đăng. 619
    Chủ đề. 59
    Đã tham gia. Tháng 12 năm 2016

    Danh tiếng. 44

#2

07-07-2021, 06. 31 giờ sáng


Bạn sẽ không thể thực hiện việc này bằng Thư viện phiên vì thư viện này rõ ràng dành cho một phiên duy nhất. Nếu bạn biết mình đang sử dụng FileHandler thì bạn có thể lấy thư mục từ tệp Cấu hình phiên của mình và sau đó quét tất cả các tệp. Bạn có thể sẽ cần phải đọc từng phần để có được những thứ như dấu thời gian và nội dung hợp lệ. Kiểm tra cách trình xử lý Thư viện phiên thực hiện điều đó và bạn có thể bắt chước nó.
hệ thống/Phiên/Trình xử lý/Trình xử lý tệp. php

Tôi sẽ không gọi đây là vấn đề “phổ biến”, vì giá trị của nó.

Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
Nếu tôi đang triển khai điều này, cá nhân tôi có thể sẽ làm điều đó bên ngoài Phiên - thứ gì đó giống như dấu thời gian đăng nhập hoặc “hoạt động lần cuối” trong cơ sở dữ liệu cho từng người dùng để bạn có thể truy vấn họ nhanh chóng.

  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Gary
    Thành viên
  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?

  • Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?
    Làm cách nào để có được tất cả các phiên đang hoạt động trong PHP?

  • Bài đăng. 170
    Chủ đề. 31
    Đã tham gia. Tháng 10 năm 2019

    Danh tiếng. 0

#4

07-07-2021, 01. 06 PM
(Bài đăng này đã được sửa đổi lần cuối. 07-07-2021, 01. 09 giờ tối bởi Gary. )


Tôi đồng ý với paulkd về cái này. sử dụng bảng cơ sở dữ liệu khá đơn giản và bỏ qua sự cô lập (có mục đích) giữa các phiên PHP đảm bảo.

Khi tôi triển khai nó, nó chỉ là việc làm sau, và sau đó chỉ vì nó quá đơn giản để thực hiện (tôi đã có một bảng theo dõi những người đã đăng nhập, khi họ đăng nhập . vì vậy, trong trường hợp của tôi (chỉ muốn có tổng số), đó là một ĐẾM có điều kiện đơn giản, nhưng sẽ đủ đơn giản để thay đổi ĐẾM thành CHỌN).

Làm cách nào để có phiên hoạt động trong PHP?

Luôn sử dụng session_status() , để kiểm tra xem một phiên đã bắt đầu và đang hoạt động chưa. if(session_id() === "") session_start(); . Cả hai chức năng sẽ tiếp tục báo cáo rằng phiên tồn tại.

Làm cách nào để kiểm tra tất cả dữ liệu phiên trong PHP?

Bạn có thể kiểm tra xem một biến đã được đặt trong phiên của người dùng hay chưa bằng cách sử dụng hàm isset() , giống như cách bạn làm với một biến thông thường. Bởi vì $_SESSION superglobal chỉ được khởi tạo sau khi session_start() được gọi, bạn cần gọi session_start() trước khi sử dụng isset() trên một biến phiên.

Làm cách nào để nhận chi tiết phiên trong PHP?

Nhận giá trị biến phiên PHP .
.
<. LOẠI TÀI LIỆU html>
// Echo session variables that were set on previous page. echo "Favorite color is " . $_SESSION["favcolor"] . ".
"; echo "Favorite animal is " . $_SESSION["favanimal"] . "."; ?>.
.
.

Làm cách nào để in tất cả giá trị phiên trong PHP?

Sử dụng cái này. echo ' Or you can use print_r if you don't care about types.