ホームページ  >  記事  >  バックエンド開発  >  PHPセッション管理_Sessionセッション

PHPセッション管理_Sessionセッション

WBOY
WBOYオリジナル
2016-08-08 09:29:371129ブラウズ

1. セッションを理解する

  • セッションは、ユーザーがページにアクセスしたときに開始され、ユーザーが Web サイトから切断されたときに終了し、セッションのライフサイクルを形成します。ユーザーが接続するたびに、PHP は現在のユーザーを識別し、他のユーザーと区別するために一意の SessionID を自動的に生成します。

  • セッション中に、PHP はデフォルトで PHPSESSIONID という名前の識別子を生成します (名前は php.ini ファイルで変更できます)。この識別子は各ページでブラウザに送信され、次のページで Web サーバーに返されます。ページリクエスト。

  • SessionID は、セッション情報としてデータベースに保存したり、異なるユーザーを区別するための主キーとして使用したり、サーバー側でセッション ファイル名の一意の文字列として使用したりできます。

  • セッション中、SessionID はクライアントとサーバーの 2 つの場所に保存されます。クライアント側では一時 Cookie が使用され、ブラウザの指定されたディレクトリに保存されます (セッション Cookie と呼ばれます)。サーバー側では、指定されたセッション ディレクトリにテキスト ファイルの形式で保存されます。

2. セッションを開始します

  • session_start() 関数を使用してセッションを作成します session_start()函数创建会话

    bool session_start(void);
    说明:使用session_start()之前浏览器不能有任何输出,否则会出错。

  • 通过session_register()函数创建会话

session_register()函数用来为会话登录一个变量来隐含地启动会话,但要求php.ini文件的选项,将register_globals指令设置为’on’,重启Apache服务器。

  • 会话变量启动后,全部保存在全局数组$_SESSION[]中。通过全局数组$_SESSION创建一个会话变量很容易,只需直接给该数组添加一个元素即可。

三、应用Session

  • PHP中的Session功能强大:可以保存当前用户的特定数据和相关信息。可以保存数组、对象、字符串任意数据类型。将各种类型的数据添加到Session中,必须应用全局数组$_SESSION[]

    bool session_start(void)
  • 手順: session_start() を使用する前に参照してください。 code> コンバーターは出力を持てません。そうでない場合は、エラーが発生します。

    session_register() 関数を使用してセッションを作成します

  • $_SESSIONsession_register() 関数は、セッションの変数を記録して暗黙的にセッションを開始するために使用されます。ただし、PHP .ini ファイル オプションが必要です。register_globals ディレクティブを「on」に設定し、Apache サーバーを再起動します。

  • セッション変数が開始されると、それらはすべてグローバル配列 $_SESSION[] に保存されます。グローバル配列
  • を介してセッション変数を作成するのは簡単で、配列に要素を直接追加するだけです。


    $_SESSION

    3. セッションの適用

  • PHP のセッションは強力です。現在のユーザーの特定のデータと関連情報を保存できます。配列、オブジェクト、文字列などの任意のデータ型を保存できます。さまざまなタイプのデータをセッションに追加するには、グローバル配列 $_SESSION[] を使用する必要があります。


    session_destroy()

    4. セッションを削除します

単一のセッションを削除します

セッション変数の削除は配列の操作と同じで、配列の要素を直接ログアウトするだけです。

    unset($_SESSION[‘what’]);

複数のセッションを削除する

すべてのセッション変数を一度にログアウトするには、空の配列を

    $_SESSION = array();
  • 現在のセッションを終了します
  • セッション全体が終了した場合は、まずすべてのセッション変数をログアウトしてから、
  • 関数を使用して現在のセッションをクリアし、セッション内のすべてのリソースをクリアして、セッションを完全に破棄する必要があります。
session_destroy();

5. セッションアプリケーション🎜🎜🎜セッションを通じてページのアクセス許可を制御します。 🎜🎜🎜 6. Cookie とセッションの比較 🎜🎜 最大の違いは: 🎜🎜🎜 セッションはサーバー上に情報を保存し、サーバーはこの ID に基づいてセッション ID を受け取ります。セッション情報リソース; 🎜🎜Cookie はすべての情報をテキスト ファイルの形式でクライアントに保存し、ブラウザによって管理および維持されます。 🎜🎜セッションはサーバーに保存され、クライアントユーザーはセッションファイルの内容を変更できません。 Cookie はクライアント側に保存され、セッションは Cookie よりもはるかに安全です。 🎜🎜🎜 🎜 上記は、PHP セッション管理_Session セッションを内容も含めて紹介しました。PHP チュートリアルに興味のある友人の参考になれば幸いです。 🎜 🎜 🎜
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。