Hướng dẫn how is session timeout implemented in php? - thời gian chờ của phiên được thực hiện như thế nào trong php?

Không hoạt động của người dùng đã đăng ký được kiểm tra bằng thời gian chờ phiên. Khi người dùng đăng nhập vào một trang web thì phiên sẽ tạo cho người dùng đó và phiên bị phá hủy khi đăng nhập người dùng hoặc đóng trình duyệt. Thời gian chờ phiên được sử dụng để đặt giới hạn thời gian cho sự không hoạt động của người dùng. Giả sử, nếu giới hạn thời gian chờ phiên được đặt thành 60 giây và người dùng không hoạt động trong 60 giây thì phiên của người dùng đó sẽ hết hạn và người dùng sẽ yêu cầu đăng nhập lại để truy cập trang web. Cách để đặt hoặc cập nhật thời gian chờ phiên trong PHP đã hiển thị trong hướng dẫn này.

Xử lý phiên trong PHP

Hàm session_start [] được sử dụng để tạo phiên mới cho người dùng. Tên phiên mặc định là phpsessid và nó được sử dụng để kiểm tra phiên có tồn tại hay không. Nếu không tìm thấy thông tin cookie hoặc phiên thì một phiên mới sẽ được tạo cho người dùng, nếu không, phiên hiện tại sẽ được sử dụng cho người dùng.session_start[] function is used to create a new session for the user. The default session name is PHPSESSID and it is used to check the session exists or not. If no cookie or session information is found then a new session will be generated for the user, otherwise, the current session will be used for the user.

Đặt thời gian chờ phiên

Giới hạn thời gian chờ của phiên có thể được đặt bằng cách đặt giá trị của hai chỉ thị trong tệp php.ini hoặc sử dụng hàm ini_set [] trong tập lệnh PHP. Các chỉ thị được đưa ra dưới đây.php.ini file or using the ini_set[] function in the PHP script. The directives are given below.

  1. phiên.gc_maxlifetime
  2. Nó được sử dụng để đặt giới hạn thời gian tính bằng giây để lưu trữ thông tin phiên trong máy chủ trong một thời gian dài.

  3. session.cookie_lifetime
  4. Nó được sử dụng để đặt giới hạn thời gian hết hạn cho cookie phpsessid.

Các cách để đặt giá trị thời gian chờ phiên trong PHP để xử lý phiên của người dùng đã được hiển thị trong phần này của hướng dẫn bằng cách sử dụng nhiều ví dụ.

Ví dụ-1: Đặt giá trị thời gian chờ phiên bằng các chỉ thị PHP

Tạo một tệp PHP với tập lệnh sau để biết cách thiết lập thời gian chờ phiên bằng cách sử dụng các chỉ thị PHP và các phiên xử lý dựa trên các giá trị chỉ thị. Hàm ini_set [] đã được sử dụng trong tập lệnh để đặt giá trị của phiên.gc_maxlifetime và session.cookie_lifetime. Thời lượng của phiên đã được đặt thành 2 giây cho mục đích thử nghiệm. Biến SuperGlobal $ _Cookie đã được sử dụng ở đây để xử lý phiên. Phiên mới sẽ được tạo cho người dùng khi tập lệnh sẽ thực thi trong trình duyệt và sau hai giây, phiên sẽ hết hạn.ini_set[] function has been used in the script to set the value of the session.gc_maxlifetime and session.cookie_lifetime directives. The duration of the session has been set to 2 seconds for testing purposes. The superglobal variable $_COOKIE array has been used here to handle the session. The new session will be generated for the user when the script will execute in the browser and after two seconds the session will be expired.

Output:

Đầu ra sau sẽ xuất hiện sau khi thực hiện tập lệnh trên lần đầu tiên. Đầu ra hiển thị tên người dùng phiên mặc định, PHPSessID.

Đầu ra sau sẽ xuất hiện nếu trang được làm mới sau 2 giây.

Ví dụ-2: Đặt giá trị thời gian chờ phiên bằng cách sử dụng mảng $ _session

Tạo một tệp PHP với tập lệnh sau để đặt giá trị thời gian chờ phiên bằng biến SuperGlobal PHP, $ _Session. Thời gian của phiên đã được đặt thành 5 giây cho mục đích thử nghiệm. Tiếp theo, thời gian yêu cầu của người dùng cho trang đã được lưu trữ trong một biến có tên $ Time. Khi khoảng thời gian giữa biến thời gian $ và hoạt động cuối cùng của người dùng sẽ là hơn 5 giây, thì phiên hiện tại của người dùng sẽ bị phá hủy và một phiên mới sẽ được tạo. Các hàm session_unset [] và session_destroy [] đã được sử dụng trong tập lệnh để phá hủy phiên.$time. When the time duration between the $time variable and the user’s last activity will be more than 5 seconds, then the current session of the user will be destroyed and a new session will be generated. The session_unset[] and session_destroy[] functions have used in the script to destroy the session.

Bài Viết Liên Quan

Chủ Đề