Hướng dẫn how to get session variable in php - cách lấy biến phiên trong php


Một phiên là một cách để lưu trữ thông tin (trong các biến) sẽ được sử dụng trên nhiều trang.

Không giống như cookie, thông tin không được lưu trữ trên máy tính người dùng.


Phiên PHP là gì?

Khi bạn làm việc với một ứng dụng, bạn mở nó, thực hiện một số thay đổi và sau đó bạn đóng nó. Điều này giống như một phiên. Máy tính biết bạn là ai. Nó biết khi bạn bắt đầu ứng dụng và khi bạn kết thúc. Nhưng trên internet có một vấn đề: Máy chủ web không biết bạn là ai hoặc bạn làm gì, vì địa chỉ HTTP không duy trì trạng thái.

Các biến phiên giải quyết vấn đề này bằng cách lưu trữ thông tin người dùng sẽ được sử dụng trên nhiều trang (ví dụ: tên người dùng, màu yêu thích, v.v.). Theo mặc định, các biến phiên kéo dài cho đến khi người dùng đóng trình duyệt.

Vì thế; Các biến phiên chứa thông tin về một người dùng duy nhất và có sẵn cho tất cả các trang trong một ứng dụng.

Mẹo: Nếu bạn cần lưu trữ vĩnh viễn, bạn có thể muốn lưu trữ dữ liệu trong cơ sở dữ liệu. If you need a permanent storage, you may want to store the data in a database.


Bắt đầu một phiên PHP

Một phiên được bắt đầu với chức năng session_start().

Các biến phiên được đặt với biến toàn cầu PHP: $ _Session.

Bây giờ, hãy tạo một trang mới có tên là "demo_session1.php". Trong trang này, chúng tôi bắt đầu một phiên PHP mới và đặt một số biến phiên:

Thí dụ

// Start the session
session_start();
?>


// Set session variables
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"] = "cat";
echo "Session variables are set.";
?>


Chạy ví dụ »

Lưu ý: Hàm session_start() phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML. The session_start() function must be the very first thing in your document. Before any HTML tags.



Nhận các giá trị biến phiên PHP

Tiếp theo, chúng tôi tạo một trang khác có tên là "demo_session2.php". Từ trang này, chúng tôi sẽ truy cập thông tin phiên chúng tôi đặt trên trang đầu tiên ("demo_session1.php").

Lưu ý rằng các biến phiên không được truyền riêng cho mỗi trang mới, thay vào đó chúng được lấy từ phiên chúng tôi mở ở đầu mỗi trang (session_start()).

Cũng lưu ý rằng tất cả các giá trị biến phiên được lưu trữ trong biến $ _Session toàn cầu:

Thí dụ

session_start();
?>


// Echo session variables that were set on previous page
echo "Favorite color is " . $_SESSION["favcolor"] . ".
";
echo "Favorite animal is " . $_SESSION["favanimal"] . ".";
?>


Chạy ví dụ »

Lưu ý: Hàm session_start() phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML.

Thí dụ

session_start();
?>


print_r($_SESSION);
?>


Chạy ví dụ »

Lưu ý: Hàm session_start() phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML.

Nhận các giá trị biến phiên PHP


Tiếp theo, chúng tôi tạo một trang khác có tên là "demo_session2.php". Từ trang này, chúng tôi sẽ truy cập thông tin phiên chúng tôi đặt trên trang đầu tiên ("demo_session1.php").

Lưu ý rằng các biến phiên không được truyền riêng cho mỗi trang mới, thay vào đó chúng được lấy từ phiên chúng tôi mở ở đầu mỗi trang (session_start()).

Thí dụ

session_start();
?>


// to change a session variable, just overwrite it
$_SESSION["favcolor"] = "yellow";
print_r($_SESSION);
?>


Chạy ví dụ »


Lưu ý: Hàm session_start() phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML.

Nhận các giá trị biến phiên PHP

Thí dụ

session_start();
?>


// remove all session variables
session_unset();

Chạy ví dụ »
session_destroy();
?>


Chạy ví dụ »


Lưu ý: Hàm session_start() phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML.



(Php 4> = 4.1.0, Php 5, Php 7, Php 8)

$ _Session - Biến phiênSession variables

Sự mô tả

Một mảng kết hợp chứa các biến phiên có sẵn cho tập lệnh hiện tại. Xem tài liệu chức năng phiên để biết thêm thông tin về cách sử dụng điều này.

Ghi chú

Ghi chú::

Đây là một 'Superglobal', hoặc biến toàn cầu, tự động. Điều này đơn giản có nghĩa là nó có sẵn trong tất cả các phạm vi trong suốt một kịch bản. Không cần phải thực hiện biến $ toàn cầu; để truy cập nó trong các chức năng hoặc phương pháp.global $variable; to access it within functions or methods.

Tàu kéo

7 năm trước

Creating New Session
==========================
<?php
session_start
();
/*session is started if you don't write this line can't use $_Session  global variable*/
$_SESSION["newsession"]=$value;
?>
Getting Session
==========================
<?php
session_start
();
/*session is started if you don't write this line can't use $_Session  global variable*/
$_SESSION["newsession"]=$value;
/*session created*/
echo $_SESSION["newsession"];
/*session was getting*/
?>
Updating Session
==========================
<?php
session_start
();
/*session is started if you don't write this line can't use $_Session  global variable*/
$_SESSION["newsession"]=$value;
/*it is my new session*/
$_SESSION["newsession"]=$updatedvalue;
/*session updated*/
?>
Deleting Session
==========================
<?php
session_start
();
/*session is started if you don't write this line can't use $_Session  global variable*/
$_SESSION["newsession"]=$value;
unset(
$_SESSION["newsession"]);
/*session deleted. if you try using this you've got an error*/
?>

opajaap tại opajaap dot nl ¶

9 năm trước

Be carefull with $_SESSION array elements when you have the same name as a normal global.

The following example leads to unpredictable behaviour of the $wppa array elements, some are updated by normal code, some not, it is totally unpredictable what happens.

<?php
global $wppa;
$wppa = array( 'elm1' => 'value1', 'elm2' => 'value2', ....etc...);

if ( !

session_start()0

Bohwaz ¶

14 năm trước

session_start()1

session_start()2

session_start()3

session_start()4

Jererry tại NetCourrier Dot Com ¶

14 năm trước

session_start()5

session_start()6

session_start()7

session_start()8

session_start()9

Jererry tại NetCourrier Dot Com ¶

9 năm trước

session_start()0

session_start()1

session_start()2

session_start()3

session_start()4

session_start()5

session_start()6

session_start()7

session_start()8

session_start()6

session_unset()0

session_unset()1

session_unset()2

session_unset()3

session_start()9

Bohwaz ¶

9 năm trước

session_unset()5

session_unset()6

session_unset()7

session_start()9

Bohwaz ¶

14 năm trước

session_unset()9

session_destroy()0

session_start()9

Làm thế nào tôi có thể xem các biến phiên?

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.using the function isset(), as you would a normal variable. Because the $_SESSION superglobal is only initialised once session_start() has been called, you need to call session_start() before using isset() on a session variable.

Biến phiên $ _ trong PHP là gì?

Các biến phiên giải quyết vấn đề này bằng cách lưu trữ thông tin người dùng sẽ được sử dụng trên nhiều trang (ví dụ: tên người dùng, màu yêu thích, v.v.). Theo mặc định, các biến phiên kéo dài cho đến khi người dùng đóng trình duyệt. Vì thế; Các biến phiên chứa thông tin về một người dùng duy nhất và có sẵn cho tất cả các trang trong một ứng dụng.storing user information to be used across multiple pages (e.g. username, favorite color, etc). By default, session variables last until the user closes the browser. So; Session variables hold information about one single user, and are available to all pages in one application.

Làm thế nào có thể đặt biến phiên trong PHP?

Để đặt các biến phiên, bạn có thể sử dụng biến mảng toàn cầu có tên $ _Session [].Sau đó, máy chủ có thể truy cập các biến toàn cầu này cho đến khi kết thúc phiên.Bây giờ bạn đã biết một phiên là gì trong PHP và làm thế nào để bắt đầu một, đã đến lúc xem xét một ví dụ và xem nó hoạt động như thế nào.use the global array variable called $_SESSION[]. The server can then access these global variables until it terminates the session. Now that you know what a session is in PHP and how to start one, it's time to look at an example and see how it works.

Làm thế nào tôi có thể truy cập phiên trong PHP?

Hàm Php session_start () được sử dụng để bắt đầu phiên.Nó bắt đầu một phiên mới hoặc tiếp tục hiện có.Nó trả về phiên hiện có nếu phiên được tạo ra. is used to start the session. It starts a new or resumes existing session. It returns existing session if session is created already.