PHPセッション
PHPセッション
PHPセッション変數(shù)は、ユーザーセッション(セッション)に関する情報(bào)を保存したり、ユーザーセッション(セッション)の設(shè)定を変更したりするために使用されます。セッション変數(shù)には単一ユーザーの情報(bào)が保存され、アプリケーション內(nèi)のすべてのページで使用できます。
PHP セッション変數(shù)
コンピューター上でアプリケーションを操作するときは、アプリケーションを開いて変更を加えてから閉じます。それは會話によく似ています。コンピューターはあなたが誰であるかを知っています。アプリを開いたり閉じたりするタイミングを認(rèn)識します。しかし、インターネットでは問題が発生します。HTTP アドレスは狀態(tài)を維持できないため、Web サーバーはユーザーが誰で何をしているのかを知りません。
PHP セッションは、後で使用できるようにユーザー情報(bào) (ユーザー名、購入したアイテムなど) をサーバーに保存することで、この問題を解決します。ただし、セッション情報(bào)は一時(shí)的なものであり、ユーザーがサイトを離れると削除されます。情報(bào)を永続的に保存する必要がある場合は、データをデータベースに保存できます。
セッションは、訪問者ごとに一意の ID (UID) を作成し、この UID に基づいて変數(shù)を保存することで機(jī)能します。 UID は Cookie に保存されるか、URL を通じて渡されます。
PHP セッションを開始する
PHP セッションにユーザー情報(bào)を保存するには、まずセッションを開始する必要があります。
注: session_start() 関數(shù)は <html> タグの前に配置する必要があります:
<?php session_start(); ?> <html> <body> </body> </html>
上記のコードは、ユーザー情報(bào)の保存を開始できるようにユーザーのセッションをサーバーに登録し、UID をユーザーのセッション。セッションの設(shè)定とアプリケーション
Session_start (); // session. を初期化します
$ _Session [name] = value; //
echo を設(shè)定します $ _Session [name]; session isset($_SESSION[name]); // 判定 unset($_SESSION[name]); //
session_destroy(); // すべてのセッションを消費(fèi)する
Storage セッション変數(shù)
正しい変數(shù)を使用する方法は、PHP $_SESSION を使用することです。 変數(shù):
<?php session_start(); // 存儲 session 數(shù)據(jù) $_SESSION['views']=1; ?> <html> <head> <meta charset="utf-8"> <title> php中文網(wǎng)(php.cn)</title> </head> <body> <?php // 檢索 session 數(shù)據(jù) echo "瀏覽量:". $_SESSION['views']; ?> </body> </html>
出力:
ビュー: 1
以下の例では、単純なページビューカウンターを作成しました。 isset() 関數(shù)は、「views」変數(shù)が設(shè)定されているかどうかを検出します。 「views」変數(shù)が設(shè)定されている場合は、カウンターをインクリメントします。 「views」が存在しない場合は、「views」変數(shù)を作成して 1 に設(shè)定します:
<?php session_start(); if(isset($_SESSION['views'])) { $_SESSION['views']=$_SESSION['views']+1; } else { $_SESSION['views']=1; } echo "瀏覽量:". $_SESSION['views']; ?>セッションを破棄
セッション データを削除したい場合は、unset() または session_destroy() を使用できます。関數(shù) 。
unset() 関數(shù)は、指定されたセッション変數(shù)を解放するために使用されます:
<?php session_start(); if(isset($_SESSION['views'])) { unset($_SESSION['views']); } ?>
session_destroy() 関數(shù)を呼び出してセッションを完全に破棄することもできます:
<?php session_destroy(); ?>
注: session_destroy() はセッションをリセットし、セッションが失われます保存されているすべてのセッション データ。
session_idセッションは各ユーザーのセッションを追跡するために使用され、ユーザーを區(qū)別するためにサーバーによって生成されたセッションIDを使用して識別されます。セッションはサーバーのメモリに保存され、SessionID はサーバーのメモリとクライアントの Cookie に保存されます。このように、ユーザーがリクエストを行うと、サーバー
はユーザーのCookieに記録されているセッションIDとサーバーのメモリ內(nèi)のセッションIDを比較し、ユーザーに対応するセッション
を見つけて操作を?qū)g行します。したがって、クライアントが Cookie を無効にすると、セッションは
を使用してセッションを設(shè)定および読み取ることができなくなります
Cookie と同様に、連想配列 $_SESSION をサーバー側(cè)で操作してセッション內(nèi)のデータを読み取ることができます
Cookie よりも高度です簡単に言うと、$_SESSION 配列を直接操作して配列要素を追加および削除し、Session
php.ini 設(shè)定セッションのすべての操作を?qū)g現(xiàn)できます
session.save_path = '/leapsoulcn';
デフォルト値は / です。 tmp は、セッション ファイルが c:/tmp ディレクトリに保存されることを意味します。