PHPセッション
PHP セッション変數(shù)は、ユーザー セッション (セッション) に関する情報を保存したり、ユーザー セッション (セッション) の設定を変更したりするために使用されます。 Session 変數(shù)には 1 人のユーザーに関する情報が保存され、アプリケーション內(nèi)のすべてのページで使用できます。
PHP セッション変數(shù)
コンピューター上でアプリケーションを操作するときは、アプリケーションを開いて変更を加えて閉じます。それは會話によく似ています。コンピューターはあなたが誰であるかを知っています。アプリを開いたり閉じたりするタイミングを認識します。しかし、インターネットでは問題が発生します。HTTP アドレスは狀態(tài)を維持できないため、Web サーバーはユーザーが誰であり、何をしたかを知りません。
PHP セッションは、後で使用できるようにユーザー情報 (ユーザー名、購入したアイテムなど) をサーバーに保存することで、この問題を解決します。ただし、セッション情報は一時的なものであり、ユーザーがサイトを離れると削除されます。 情報を永続的に保存する必要がある場合は、データをデータベースに保存できます。 セッションは、訪問者ごとに一意の ID (UID) を作成し、この UID に基づいて変數(shù)を保存することで機能します。 UID は Cookie に保存されるか、URL を通じて渡されます。セッションを開きます
まず、セッションを開く必要があるため、學習する最初の関數(shù)は
session_start()です この関數(shù)にはパラメータがありません。 PHP ファイルの先頭で
コメント を使用します。 session_start() 関數(shù)は <html> タグの前に配置する必要があります:
<?php session_start() ?>
< html><body> ;</body>
</html>
セッションデータを追加
セッション後、次の処理で$_SESSION 変數(shù)は、情報にアクセスするために使用されます。知っておく必要があるのは、$_SESSION 変數(shù)が配列であるということです。情報をセッションに保存したい場合、何を書けばよいでしょうか:
<?php $_SESSION['userName'] = 'wang'; ?>
セッションデータの読み取り
読み取りは、次のように配列を使用するのと同じくらい簡単です:
$userName = $_SESSION['userName'];
もちろん、
$_SESSION['userName']を使用することもできます。配列と同じように使用されます。セッション データを破棄する
セッション データを破棄するには、さまざまな方法を使用できます。
a) unset関數(shù)
unset($_SESSION['XXX']);
のようなものを使用して、セッション內(nèi)のXXX変數(shù)を破棄します。
追記:やめてください!しないでください! unset($_SESSION) は行わないでください。unset($_SESSION) を?qū)g行すると、$_SESSION 変數(shù)が後で使用できなくなります。 ! !
b) セッション変數(shù)に空の配列を代入します
$_SESSION = array();
$_SESSOIN 変數(shù)は配列であると前に述べたので、空の配列の代入は $ と同等です現(xiàn)在のセッションの _SESSION 変數(shù)の値は破棄されます。
c) session_destory() 関數(shù)
この関數(shù)は、現(xiàn)在のセッション內(nèi)のすべてのデータを破棄し、現(xiàn)在のセッションを終了します。ただし、現(xiàn)在のセッションに関連付けられているグローバル変數(shù)やセッション Cookie はリセットされません。セッション変數(shù)を保存および取得する正しい方法は、PHP $_SESSION 変數(shù)を使用することです:
<?php session_start(); // 存儲 session 數(shù)據(jù) $_SESSION['views']=100; ?> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <?php // 檢索 session 數(shù)據(jù) echo "瀏覽量:". $_SESSION['views']; ?> </body> </html>プログラム実行結(jié)果:Views: 100
Example
以下の例では、単純なページビューカウンターを作成しました。 isset() 関數(shù)は、「views」変數(shù)が設定されているかどうかを検出します。 「views」変數(shù)が設定されている場合は、カウンターをインクリメントします。 "views" が存在しない場合は、
"views" 変數(shù)を作成して 1 に設定します。ページが更新されるたびに 1 が追加されます
<?php header("Content-type:text/html;charset=utf-8"); //設置編碼 // 存儲 session 數(shù)據(jù) session_start(); if(isset($_SESSION['views'])) { $_SESSION['views']=$_SESSION['views']+1; } else { $_SESSION['views']=1; } echo "瀏覽量:". $_SESSION['views']; ?>プログラムを?qū)g行して、ビュー數(shù)を確認してください