YurunPHP中提供了豐富的Session操作和配置,無需手動session_start。
## 相關配置項
#### SESSION_NAME
用在 cookie 或者 URL 中的會話名稱, 例如:PHPSESSID。 只能使用字母和數字作為會話名稱,建議盡可能的短一些, 并且是望文知意的名字(對于啟用了 cookie 警告的用戶來說,方便其判斷是否要允許此 cookie)。 如果指定了 name 參數, 那么當前會話也會使用指定值作為名稱。
> 會話名稱至少需要一個字母,不能全部都使用數字, 否則,每次都會生成一個新的會話 ID。
#### SESSION_SAVEPATH
指定Session文件存儲目錄,如果不指定按照PHP默認配置存儲。
#### SESSION_USE_COOKIES
sessionid在客戶端采用的存儲方式,置1代表使用cookie記錄客戶端的sessionid,同時,$_COOKIE變量里才會有$_COOKIE['PHPSESSIONID']這個元素存在
#### SESSION_CACHE_EXPIRE
Session的緩存有效期,單位為分鐘
#### SESSION_CACHE_LIMITER
指定緩存機制名字
<table class="doctable table">
<thead>
<tr class="firstRow">
<th>
值
</th>
<th>
發送的Header
</th>
</tr>
</thead>
<tbody class="tbody">
<tr>
<td>
public
</td>
<td>
<pre>Expires: (sometime in the future, according session.cache_expire)
Cache-Control: public, max-age=(sometime in the future, according to session.cache_expire)
Last-Modified: (the timestamp of when the session was last saved)</pre>
</td>
</tr>
<tr>
<td>
private_no_expire
</td>
<td>
<pre>Cache-Control: private, max-age=(session.cache_expire in the future), pre-check=(session.cache_expire in the future)
Last-Modified: (the timestamp of when the session was last saved)</pre>
</td>
</tr>
<tr>
<td>
private
</td>
<td>
<pre>Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: private, max-age=(session.cache_expire in the future), pre-check=(session.cache_expire in the future)
Last-Modified: (the timestamp of when the session was last saved)</pre>
</td>
</tr>
<tr>
<td>
nocache
</td>
<td>
<pre>Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache</pre>
</td>
</tr>
</tbody>
</table>
#### SESSION_GC_PROBABILITY
每次請求時觸發Session失效緩存清理的概率。取值范圍:0.0-1.0
#### SESSION_MAX_LIFETIME
Session數據在服務器端儲存的時間,如果超過這個時間,那么Session數據就自動刪除!
#### SESSION_PREFIX
SESSION前綴
#### SESSION_USER_SAVE_HANDLER
Session用戶處理類名
## 方法
#### 設置Session
~~~
Session::set($name, $value)
~~~
| 參數名 | 描述 |
| -- | -- |
| $name | session名稱 |
| $value | session值 |
~~~
Session::set('pwd','123456'); // $_SESSION['pwd'] = '123456';
Session::set('@.pwd','123456'); // $_SESSION['prefix']['pwd'] = '123456';
~~~
#### 獲取Session
~~~
Session::get($name = null, $default = false)
~~~
| 參數名 | 描述 |
| -- | -- |
| $name | session名稱 |
| $default | 默認值 |
~~~
Session::get('pwd','123456'); // 取$_SESSION['pwd'],如果不存在返回123456
Session::get('@.pwd'); // 取$_SESSION['prefix']['pwd']的值
~~~
#### 刪除Session
~~~
Session::delete($name = null)
~~~
| 參數名 | 描述 |
| -- | -- |
| $name | session名稱 |
~~~
Session::delete('pwd'); // 刪除$_SESSION['pwd']
Session::delete('@.pwd'); // 刪除$_SESSION['prefix']['pwd']的值
~~~
#### 清空Session
~~~
Session::clear()
~~~
#### Session值是否存在
~~~
Session::exists($name)
~~~
| 參數名 | 描述 |
| -- | -- |
| $name | session名稱 |
~~~
Session::exists('pwd'); // $_SESSION['pwd']是否存在
Session::exists('@.pwd'); // $_SESSION['prefix']['pwd']是否存在
~~~
- 序言
- 有些話想說
- 基礎入門
- 簡介
- 下載安裝YurunPHP
- 運行環境
- 開發規范
- 目錄結構
- 模塊
- 控制器
- 自動加載
- 手動加載
- 項目配置
- 入口文件
- 項目目錄結構
- 配置文件
- 驅動配置
- 數據庫配置
- 項目初始化處理
- 框架編譯
- 項目部署
- 控制器
- 創建控制器
- 加載模版顯示頁面
- AJAX返回數據
- 模型
- 創建模型
- 實例化模型
- 數據管理
- 連貫操作
- distinct
- field
- from
- where
- wherePk
- group
- having
- order
- limit
- join
- page
- headTotal/footTotal
- 連貫操作收尾方法
- select
- selectPage
- buildSQL
- selectValue
- selectBy
- getBy
- getByPk
- random
- inc
- dec
- add
- edit
- delete
- 合計函數
- save
- 執行SQL語句
- 創建數據并驗證
- 字段映射
- 增刪改查前置和后置
- Response類
- GET/POST/COOKIE/REQUEST
- Cookie
- Session
- 如何自定義Session存儲
- 數據庫操作
- 常用操作
- 查詢記錄
- 存儲過程
- 數據庫函數
- MSSQL
- 視圖
- 調用視圖
- 給視圖傳值
- 模版引擎
- 輸出
- 使用PHP代碼
- 模版標簽
- if
- switch
- for
- counter
- foreach
- include
- js/css/image
- url
- origin
- 模版常量替換
- 后臺視圖控件
- 通用屬性用法
- 數據集綁定
- 下拉框(select)
- 單選框(radio)
- 單選框組(radiogroup)
- 選擇框(checkbox)
- 選擇框組(checkboxgroup)
- 表格(table)
- 文本框(textbox)
- 分頁條(pagebar)
- 數據驗證
- 驗證方法
- between
- betweenEqual
- empty_str
- not_empty_str
- regex
- length
- lengthChar
- mobile
- tel
- phone
- postcode
- url
- ip
- lt/gt/ltEqual/gtEqual
- equal/unequal
- in/notin
- idcard
- 路由
- 路由配置
- 自定義分層
- 緩存
- 緩存配置
- 使用緩存
- 配置
- 配置驅動配置
- 使用配置
- 過濾域名
- 日志
- 日志驅動配置
- 文件日志
- 事件
- 事件列表
- 插件
- 多語言支持
- 定時任務
- API接口開發
- CLI命令行模式
- Soap WebService