session_set_cookie_params

(PHP 4, PHP 5, PHP 7, PHP 8)

session_set_cookie_params設(shè)置會(huì)話 cookie 參數(shù)

說明

session_set_cookie_params(
    int $lifetime,
    string $path = ?,
    string $domain = ?,
    bool $secure = false,
    bool $httponly = false
): bool
session_set_cookie_params(array $options): bool

Cookie 參數(shù)可以在 php.ini 文件中定義,本函數(shù)僅在當(dāng)前腳本執(zhí)行過程中有效。 因此,如果要通過函數(shù)修改 cookie 參數(shù),需要對(duì)每個(gè)請(qǐng)求都要 在調(diào)用 session_start() 函數(shù)之前調(diào)用 session_set_cookie_params() 函數(shù)。

本函數(shù)會(huì)修改運(yùn)行期 ini 設(shè)置值, 可以通過 ini_get() 函數(shù)獲取這些值。

參數(shù)

lifetime

Cookie 的 生命周期,以秒為單位。

path

此 cookie 的有效 路徑。 on the domain where 設(shè)置為“/”表示對(duì)于本域上所有的路徑此 cookie 都可用。

domain

Cookie 的作用 。 例如:“www.php.net”。 如果要讓 cookie 在所有的子域中都可用,此參數(shù)必須以點(diǎn)(.)開頭,例如:“.php.net”。

secure

設(shè)置為 true 表示 cookie 僅在使用 安全 鏈接時(shí)可用。

httponly

設(shè)置為 true 表示 PHP 發(fā)送 cookie 的時(shí)候會(huì)使用 httponly 標(biāo)記。

options

此參數(shù)為一個(gè)鍵值對(duì)關(guān)聯(lián) array,可能包含的鍵有: lifetime,path,domain, secure,httponly 以及 samesite。 這些鍵對(duì)應(yīng)的值和上面所述的一樣。 samesite 鍵對(duì)應(yīng)的值可以是 Lax 或者 Strict。 如果可以接受的鍵在傳入的數(shù)組中不存在, 那么會(huì)采用這些鍵對(duì)應(yīng)的默認(rèn)值作為運(yùn)行時(shí)的值。 如果不提供 samesite 鍵, 那么就設(shè)置 SameSite cookie 屬性。

返回值

成功時(shí)返回 true, 或者在失敗時(shí)返回 false。

更新日志

版本 說明
7.3.0 增加 options 參數(shù), 可以通過傳入一個(gè)關(guān)聯(lián)數(shù)組對(duì)各個(gè)選項(xiàng)進(jìn)行設(shè)置。 同時(shí),通過使用這個(gè)參數(shù)還可以對(duì) SameSite cookie 進(jìn)行設(shè)置。
7.2.0 成功時(shí)返回 true, 或者在失敗時(shí)返回 false。 之前版本中是返回 void 的。
5.2.0 加入 httponly 參數(shù)。