freeCodeCamp/guide/chinese/php/sessions/index.md

60 lines
2.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: Sessions
localeTitle: 会议
---
## 会议
会话是PHP中的一项功能允许您存储有关用户的数据服务器端。设置会话时会设置一个浏览器cookie用于向PHP标识用户以便PHP知道要访问哪些服务器端变量。
### 开始一个会话
在您要访问会话的每个页面上您需要启动或加载会话。为此请运行加载PHP会话系统的`session_start()`函数。
```PHP
<?php
session_start();
```
请注意在使用基于cookie的会话时必须先调用session\_start然后才能向浏览器输出任何内容。其他任何事都会导致错误。
### 在会话中访问和设置数据
`$_SESSION['key']`变量是一种特殊类型的数组使用浏览器cookie来确定要访问的会话
在下面的示例中您会看到用户选择的主题设置为主题编号1。
```PHP
<?php
session_start();
$_SESSION['themechoice'] = 1;
```
访问会话变量类似于设置一个。只需将变量包含在需要访问的位置即可。例如,如下面的代码示例所示回显它。
```PHP
<?php
session_start();
echo $_SESSION['themechoice'];
```
### 删除会话
要从系统中删除会话请运行以下PHP代码。它将取消设置会话变量并将其从系统中删除。
```PHP
<?php
session_unset();
session_destroy();
```
### 会议是暂时的
重要的是不要将会话视为永久存储。每当应用程序移动到新的主机服务器时,应用程序本身(例如注销按钮),甚至在服务器维护期间,开发人员都会不时清除它们。对于数据的长期存储,请确保使用数据库。
### 安全
最后但同样重要的是安全地使用php会话非常重要。阅读我们关于[会话标识符获取](/php/security/session-identifier-acquirement)和[会话劫持的](/php/security/session-hijacking)文章以获取更多信息。
#### 更多信息:
* [php.net会话手册](https://secure.php.net/manual/en/book.session.php)