mirror of
https://github.com/php/doc-zh.git
synced 2026-04-30 03:33:11 +02:00
8c2ec3127d
* Update book.xml * Update constants.xml * Update examples.xml * Update security.xml * Update upload-progress.xml * Update session-cache-expire.xml * Update session-cache-limiter.xml * Update session-destroy.xml * Update session-encode.xml * Update session-get-cookie-params.xml * Update session-id.xml * Update session-name.xml * Update session-regenerate-id.xml * Update session-save-path.xml * Update session-set-cookie-params.xml * Update session-set-save-handler.xml * Update session-start.xml * Update session-start.xml * Update session-status.xml * Update session-unset.xml * Update book.xml * Update session-cache-expire.xml * Update session-unset.xml
189 lines
6.6 KiB
XML
189 lines
6.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 37be0e0626e8b96e617e800392651eacc5f65bdc Maintainer: yuanyuqiang Status: ready -->
|
|
<!-- CREDITS: mowangjuanzi -->
|
|
<refentry xml:id="function.session-set-cookie-params" xmlns="http://docbook.org/ns/docbook">
|
|
<refnamediv>
|
|
<refname>session_set_cookie_params</refname>
|
|
<refpurpose>设置会话 cookie 参数</refpurpose>
|
|
</refnamediv>
|
|
<refsect1 role="description">
|
|
&reftitle.description;
|
|
<methodsynopsis>
|
|
<type>bool</type><methodname>session_set_cookie_params</methodname>
|
|
<methodparam><type>int</type><parameter>lifetime_or_options</parameter></methodparam>
|
|
<methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>path</parameter><initializer>&null;</initializer></methodparam>
|
|
<methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>domain</parameter><initializer>&null;</initializer></methodparam>
|
|
<methodparam choice="opt"><type class="union"><type>bool</type><type>null</type></type><parameter>secure</parameter><initializer>&null;</initializer></methodparam>
|
|
<methodparam choice="opt"><type class="union"><type>bool</type><type>null</type></type><parameter>httponly</parameter><initializer>&null;</initializer></methodparam>
|
|
</methodsynopsis>
|
|
<para>自 PHP 7.3.0 起可用的替代签名:</para>
|
|
<methodsynopsis>
|
|
<type>bool</type><methodname>session_set_cookie_params</methodname>
|
|
<methodparam><type>array</type><parameter>lifetime_or_options</parameter></methodparam>
|
|
</methodsynopsis>
|
|
<para>
|
|
Cookie 参数可以在 &php.ini; 文件中定义,本函数仅在当前脚本执行过程中有效。
|
|
因此,如果要通过函数修改 cookie 参数,需要对每个请求都要
|
|
在调用 <function>session_start</function> 函数之前调用
|
|
<function>session_set_cookie_params</function> 函数。
|
|
</para>
|
|
<para>
|
|
本函数会修改运行期 ini 设置值,
|
|
可以通过 <function>ini_get</function> 函数获取这些值。
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="parameters">
|
|
&reftitle.parameters;
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><parameter>lifetime_or_options</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
使用第一个签名时,session cookie 的 <link linkend="ini.session.cookie-lifetime">lifetime</link>,以秒为单位。
|
|
</para>
|
|
<para>
|
|
当使用第二个签名时,关联 <type>array</type> 可能具有 <literal>lifetime</literal>、<literal>path</literal>、<literal>domain</literal>、<literal>secure</literal>、<literal>httponly</literal>
|
|
和 <literal>samesite</literal> 中的任一 key。这些值与同名参数的含义相同。<literal>samesite</literal> 元素的值应该是 <literal>Lax</literal> 或
|
|
<literal>Strict</literal>。
|
|
如果可以接受的键在传入的数组中不存在,那么会采用这些键对应的默认值作为运行时的值。如果省略 <literal>samesite</literal> 元素,则不会设置 SameSite cookie 属性。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>path</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
此 cookie 的有效 <link linkend="ini.session.cookie-path">路径</link>。 on the domain where
|
|
设置为“/”表示对于本域上所有的路径此 cookie 都可用。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>domain</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Cookie 的作用 <link linkend="ini.session.cookie-domain">域</link>。
|
|
例如:“www.php.net”。
|
|
如果要让 cookie 在所有的子域中都可用,此参数必须以点(.)开头,例如:“.php.net”。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>secure</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
设置为 &true; 表示 cookie 仅在使用
|
|
<link linkend="ini.session.cookie-secure">安全</link> 链接时可用。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>httponly</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
设置为 &true; 表示 PHP 发送 cookie 的时候会使用
|
|
<link linkend="ini.session.cookie-httponly">httponly</link>
|
|
标记。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="returnvalues">
|
|
&reftitle.returnvalues;
|
|
<para>
|
|
&return.success;
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="changelog">
|
|
&reftitle.changelog;
|
|
<para>
|
|
<informaltable>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>&Version;</entry>
|
|
<entry>&Description;</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>8.0.0</entry>
|
|
<entry>
|
|
<parameter>path</parameter>、<parameter>domain</parameter>、<parameter>secure</parameter>
|
|
和 <parameter>httponly</parameter> 现在可为 null。
|
|
</entry>
|
|
</row>
|
|
<row>
|
|
<entry>7.3.0</entry>
|
|
<entry>
|
|
新增支持 <parameter>lifetime_or_options</parameter> 数组的替代签名。此签名还支持 SameSite cookie 属性的设置。
|
|
</entry>
|
|
</row>
|
|
<row>
|
|
<entry>7.2.0</entry>
|
|
<entry>
|
|
&return.success;以前该函数返回 <type>void</type>。
|
|
</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="seealso">
|
|
&reftitle.seealso;
|
|
<para>
|
|
<simplelist>
|
|
<member>
|
|
<link linkend="ini.session.cookie-lifetime">session.cookie_lifetime</link>
|
|
</member>
|
|
<member>
|
|
<link linkend="ini.session.cookie-path">session.cookie_path</link>
|
|
</member>
|
|
<member>
|
|
<link linkend="ini.session.cookie-domain">session.cookie_domain</link>
|
|
</member>
|
|
<member>
|
|
<link linkend="ini.session.cookie-secure">session.cookie_secure</link>
|
|
</member>
|
|
<member>
|
|
<link linkend="ini.session.cookie-httponly">session.cookie_httponly</link>
|
|
</member>
|
|
<member>
|
|
<link linkend="ini.session.cookie-samesite">session.cookie_samesite</link>
|
|
</member>
|
|
<member><function>session_get_cookie_params</function></member>
|
|
</simplelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
</refentry>
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|