Hướng dẫn php check if session variable exists - php kiểm tra xem biến phiên có tồn tại không

Đã hỏi 10 năm, 5 tháng trước 10 years, 5 months ago

Đã xem 80k lần 80k times

Tôi muốn làm điều gì đó như thế này:

if ($_SESSION['errors'] exists)
{
    //Do stuff
}

Tôi muốn tạo một phiên trên trang1 và sau đó truy cập trang2 nơi nó sẽ kiểm tra lỗi, nếu có lỗi, nó sẽ trả về trang1 với các lỗi.

Nhưng Trang1 sẽ đưa ra lỗi nếu biến chưa được tạo ở trang 2.

Nếu tôi làm $_SESSION['errors'] == "" trên trang1, nó sẽ đặt lại biến để điều đó không tốt.

Hướng dẫn php check if session variable exists - php kiểm tra xem biến phiên có tồn tại không

Đã hỏi ngày 1 tháng 6 năm 2012 lúc 19:05Jun 1, 2012 at 19:05

if (isset($_SESSION['errors']))
{
    //Do stuff
}

Đã trả lời ngày 1 tháng 6 năm 2012 lúc 19:07Jun 1, 2012 at 19:07

Hướng dẫn php check if session variable exists - php kiểm tra xem biến phiên có tồn tại không

AnasanasAnas

5.5445 Huy hiệu vàng41 Huy hiệu bạc70 Huy hiệu đồng5 gold badges41 silver badges70 bronze badges

1

Sử dụng chức năng isset()empty() PHP.

if (isset($_SESSION['errors']) && !empty($_SESSION['errors'])) {
    // ...
} 

Đã trả lời ngày 1 tháng 6 năm 2012 lúc 19:10Jun 1, 2012 at 19:10

Hướng dẫn php check if session variable exists - php kiểm tra xem biến phiên có tồn tại không

if (!isset($_SESSION['id']) || (trim($_SESSION['id']) == '')) {
     // do stuff
}

Đã trả lời ngày 15 tháng 5 năm 2015 lúc 4:02May 15, 2015 at 4:02

Hướng dẫn php check if session variable exists - php kiểm tra xem biến phiên có tồn tại không

Không chắc chắn liệu một câu hỏi ngớ ngẩn có hay không, tuy nhiên đây là vấn đề của tôi:

Tôi đang sử dụng một plugin sử dụng các phiên cho người dùng xác thực (không phải người dùng WP),

Theo hướng dẫn WP đến session_start () trong một hook init, tôi cần kiểm tra xem người dùng có được xác thực trước khi bắt đầu phiên không, nếu không dựa trên hook init, session_start () sẽ chạy cho mọi người dùng, ngay cả khi chúng không được xác thực, Và tôi đang cố gắng giảm số lượng phiên được tạo.
I need to check if a user is authenticated before a start a session, otherwise based on the init hook, session_start() will run for every user, even if they are not authenticated, and im trying to reduce the number of sessions being created.

Bạn có bất kỳ đề xuất nào về cách truy cập mảng phiên mà không phải chạy session_start () cho mọi người dùng không?

Kiểm tra xem biến phiên có tồn tại PHP với các ví dụ mã không

Trong phiên này, chúng tôi sẽ cố gắng giải quyết kiểm tra nếu biến phiên có tồn tại câu đố PHP bằng cách sử dụng ngôn ngữ máy tính. Phần sau của mã sẽ chứng minh điểm này.

if (isset($_SESSION['errors']))
{
    //Do stuff
}

Kiểm tra nếu biến phiên có tồn tại PHP được giải quyết bằng một số kịch bản, như chúng ta đã thấy.

Làm thế nào phiên kiểm tra được bắt đầu hay không trong PHP?

Nếu phiên không bắt đầu mã này ở trên sẽ luôn bắt đầu phiên trong tập lệnh PHP. Đây là:

  • 0 - PHP_Session_Disables: Các phiên hiện đang bị vô hiệu hóa.
  • 1 - PHP_Session_None: Phiên được bật, nhưng không có phiên nào được bắt đầu.
  • 2 - PHP_Session_Active: Phiên được bật và phiên đã được bắt đầu.

Làm thế nào tôi có thể nhận được dữ liệu trong PHP?

Để kiểm tra phiên, hãy tạo "chỉ mục. PHP" với mã sau:

Điều nào sau đây được sử dụng để kiểm tra xem biến phiên đã được đặt hay không trong PHP?

hàm isset ()

Làm thế nào để bạn làm trống một biến phiên trong PHP?

Bạn có thể hủy bỏ biến phiên bằng cách sử dụng:

  • session_unset - giải phóng tất cả các biến phiên (nó bằng cách sử dụng: $ _session = mảng (); cho mã không dùng nữa)
  • unset ($ _ phiên ['sản ​​phẩm']); - Không đặt chỉ số sản phẩm trong biến phiên.
  • session_destroy - Phá hủy tất cả dữ liệu được đăng ký vào một phiên.

Làm cách nào để kiểm tra xem một biến phiên được đặt?

Bạn có thể kiểm tra xem một biến đã được đặt trong phiên của người dùng bằng cách sử dụng function isset (), vì bạn sẽ có một biến bình thường. Vì $ _Session SuperGlobal chỉ được khởi tạo khi session_start () đã được gọi, bạn cần gọi session_start () trước khi sử dụng isset () trên biến phiên.

Làm thế nào để tôi biết nếu một phiên đang hoạt động?

Theo yêu cầu, có một vài cách khác nhau mà bạn có thể biết liệu một phiên có được bắt đầu hay không, chẳng hạn như:

  • $ phát hành hoạt động = (session_id ()! = "");
  • $ phát hành hoạt tính = xác định ('sid');
  • // Kể từ 29/8/2011 $ phát hành hoạt động = (session_status () == PHP_Session_Active);

Phiên $ _ trong PHP là gì?

PHP $ _Session là một mảng kết hợp có chứa tất cả các biến phiên. Nó được sử dụng để đặt và nhận các giá trị biến phiên.

Làm cách nào để nhận ID phiên hiện tại trong PHP?

Để nhận ID phiên trong PHP, bạn có thể sử dụng hàm Php session_id (). session_id () Trả về ID phiên nếu một phiên hoạt động. Nếu bạn muốn bắt đầu một phiên với ID phiên của riêng mình, thì bạn có thể sử dụng session_id () trước khi bạn bắt đầu phiên với ID.01-APR-2022 của riêng bạn

Làm cách nào để tìm ID phiên của tôi?

Nhận ID phiên từ menu cài đặt

  • Từ thanh điều hướng, chọn. và sau đó biểu tượng bánh răng (cài đặt).
  • Chọn Chi tiết phiên (ở dưới cùng của menu) và sau đó bạn sẽ thấy ID phiên.

Hàm php session_start () và session_destroy () là gì?

Chức năng session_destroy (): Nó phá hủy toàn bộ phiên thay vì phá hủy các biến. Khi session_start () được gọi, PHP đặt cookie phiên trong trình duyệt. Chúng ta cũng cần xóa cookie để phá hủy hoàn toàn phiên. Ví dụ: Ví dụ này được sử dụng để phá hủy phiên.14-Mar-2019

Làm thế nào kiểm tra biến phiên được đặt hay không trong PHP?

Hàm php isset () hàm isset () kiểm tra xem một biến được đặt, điều đó có nghĩa là nó phải được khai báo và không phải là null.Hàm này trả về đúng nếu biến tồn tại và không phải là null, nếu không nó sẽ trả về sai.isset() Function The isset() function checks whether a variable is set, which means that it has to be declared and is not NULL. This function returns true if the variable exists and is not NULL, otherwise it returns false.

Làm thế nào phiên kiểm tra hoạt động hay không trong PHP?

session_status () được sử dụng để trả về trạng thái phiên hiện tại. is used to return the current session status.

Làm thế nào phiên kiểm tra trống trong PHP?

Nếu bạn muốn kiểm tra xem các phiên có khả dụng hay không, bạn có thể muốn sử dụng hàm session_id (): session_id () trả về id phiên cho phiên hiện tại hoặc chuỗi trống ("") nếu không có phiên hiện tại (không có phiên hiện tạiID tồn tại).use the session_id() function: session_id() returns the session id for the current session or the empty string ("") if there is no current session (no current session id exists).

Làm thế nào phiên kiểm tra bị phá hủy hay không trong PHP?

Chà, bạn có thể sử dụng một var như $ _server ['gameHasstarted'] mặc định là sai trừ khi người dùng thực hiện một số hành động và đó là thiết lập lại khi người dùng kết thúc trò chơi.(Khi bạn phá hủy phiên).use a var like $_SERVER['gameHasStarted'] which defaults to false unless the user performs some action and that is reset when the user ends the game. (when you destroy the session).