溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php中session_start()指的是什么意思

發(fā)布時(shí)間:2022-03-07 11:34:13 來源:億速云 閱讀:375 作者:小新 欄目:編程語言

這篇文章主要介紹了php中session_start()指的是什么意思,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

在php中,session_start()的意思為“開始會(huì)話”,是一個(gè)用于創(chuàng)建新會(huì)話或者重用現(xiàn)有會(huì)話的內(nèi)置函數(shù);語法為“session_start($array);”,成功開始會(huì)話返回true,反之返回false。

php中session_start()指的是什么意思

本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版、DELL G3電腦

在php中,session_start()的意思為“開始會(huì)話”。

語法:

session_start(array $options = array()): bool

session_start()函數(shù)會(huì)創(chuàng)建新會(huì)話或者重用現(xiàn)有會(huì)話。如果通過 GET 或者 POST 方式,或者使用 cookie 提交了會(huì)話 ID, 則會(huì)重用現(xiàn)有會(huì)話。

參數(shù):

  • $options:此參數(shù)是一個(gè)關(guān)聯(lián)數(shù)組,如果提供,那么會(huì)用其中的項(xiàng)目覆蓋 會(huì)話配置指示 中的配置項(xiàng)。此數(shù)組中的鍵無需包含 session. 前綴。

    除了常規(guī)的會(huì)話配置指示項(xiàng), 還可以在此數(shù)組中包含 read_and_close 選項(xiàng)。如果將此選項(xiàng)的值設(shè)置為 true, 那么會(huì)話文件會(huì)在讀取完畢之后馬上關(guān)閉, 因此,可以在會(huì)話數(shù)據(jù)沒有變動(dòng)的時(shí)候,避免不必要的文件鎖。

當(dāng)會(huì)話自動(dòng)開始或者通過 session_start() 手動(dòng)開始的時(shí)候, PHP 內(nèi)部會(huì)調(diào)用會(huì)話管理器的 open 和 read 回調(diào)函數(shù)。 會(huì)話管理器可能是 PHP 默認(rèn)的, 也可能是擴(kuò)展提供的(SQLite 或者 Memcached 擴(kuò)展), 也可能是通過 session_set_save_handler() 設(shè)定的用戶自定義會(huì)話管理器。 通過 read 回調(diào)函數(shù)返回的現(xiàn)有會(huì)話數(shù)據(jù)(使用特殊的序列化格式存儲(chǔ)), PHP 會(huì)自動(dòng)反序列化數(shù)據(jù)并且填充 $_SESSION 超級(jí)全局變量。

要想使用命名會(huì)話,請(qǐng)?jiān)谡{(diào)用 session_start() 函數(shù) 之前調(diào)用 session_name() 函數(shù)。

如果啟用了 session.use_trans_sid 選項(xiàng), session_start() 函數(shù)會(huì)注冊(cè)一個(gè)內(nèi)部輸出管理器, 該輸出管理器完成 URL 重寫的工作。

如果用戶聯(lián)合使用 ob_start() 和 ob_gzhandler 函數(shù), 那么函數(shù)的調(diào)用順序會(huì)影響輸出結(jié)果。 例如,必須在開始會(huì)話之前調(diào)用 ob_gzhandler 函數(shù)完成注冊(cè)。

  • 返回值:成功開始會(huì)話返回 true ,反之返回 false。

示例1:

<?php
// page1.php

session_start();

echo 'Welcome to page #1';

$_SESSION['favcolor'] = 'green';
$_SESSION['animal']   = 'cat';
$_SESSION['time']     = time();

// 如果使用 cookie 方式傳送會(huì)話 ID
echo '<br /><a href="page2.php">page 2</a>';

// 如果不是使用 cookie 方式傳送會(huì)話 ID,則使用 URL 改寫的方式傳送會(huì)話 ID
echo '<br /><a href="page2.php?' . SID . '">page 2</a>';
?>

請(qǐng)求 page1.php 頁面之后, 第二個(gè)頁面 page2.php 會(huì)包含會(huì)話數(shù)據(jù)。 請(qǐng)查閱 會(huì)話參考 獲取更多關(guān)于 會(huì)話 ID 傳送的信息, 在該參考頁面中有關(guān)于常量 SID 的詳細(xì)說明。

示例2:覆蓋 Cookie 超時(shí)時(shí)間設(shè)定

<?php
// 設(shè)置 cookie 的有效時(shí)間為 1 天
session_start([
    'cookie_lifetime' => 86400,
]);
?>


感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“php中session_start()指的是什么意思”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI