PHPセッション

PHPセッション

PHPセッション変数は、ユーザーセッション(セッション)に関する情報を保存したり、ユーザーセッション(セッション)の設定を変更したりするために使用されます。セッション変数には単一ユーザーの情報が保存され、アプリケーション内のすべてのページで使用できます。

PHP セッション変数

コンピューター上でアプリケーションを操作するときは、アプリケーションを開いて変更を加えてから閉じます。それは会話によく似ています。コンピューターはあなたが誰であるかを知っています。アプリを開いたり閉じたりするタイミングを認識します。しかし、インターネットでは問題が発生します。HTTP アドレスは状態を維持できないため、Web サーバーはユーザーが誰で何をしているのかを知りません。

PHP セッションは、後で使用できるようにユーザー情報 (ユーザー名、購入したアイテムなど) をサーバーに保存することで、この問題を解決します。ただし、セッション情報は一時的なものであり、ユーザーがサイトを離れると削除されます。情報を永続的に保存する必要がある場合は、データをデータベースに保存できます。

セッションは、訪問者ごとに一意の ID (UID) を作成し、この UID に基づいて変数を保存することで機能します。 UID は Cookie に保存されるか、URL を通じて渡されます。

PHP セッションを開始する

PHP セッションにユーザー情報を保存するには、まずセッションを開始する必要があります。

注: session_start() 関数は <html> タグの前に配置する必要があります:

<?php session_start(); ?>
<html>
<body>
</body>
</html>

上記のコードは、ユーザー情報の保存を開始できるようにユーザーのセッションをサーバーに登録し、UID をユーザーのセッション。セッションの設定とアプリケーション

Session_start (); // session. を初期化します

$ _Session [name] = value; //

echo を設定します $ _Session [name]; session isset($_SESSION[name]); // 判定 unset($_SESSION[name]); //

session_destroy(); // すべてのセッションを消費する

Storage セッション変数

正しい変数を使用する方法は、PHP $_SESSION を使用することです。 変数:

<?php
session_start();
// 存储 session 数据
$_SESSION['views']=1;
?>
<html>
<head>
<meta charset="utf-8">
<title> php中文网(php.cn)</title>
</head>
<body>
<?php
// 检索 session 数据
echo "浏览量:". $_SESSION['views'];
?>
</body>
</html>

出力:

ビュー: 1

以下の例では、単純なページビューカウンターを作成しました。 isset() 関数は、「views」変数が設定されているかどうかを検出します。 「views」変数が設定されている場合は、カウンターをインクリメントします。 「views」が存在しない場合は、「views」変数を作成して 1 に設定します:

<?php
session_start();
if(isset($_SESSION['views']))
{
         $_SESSION['views']=$_SESSION['views']+1;
}
else
{
         $_SESSION['views']=1;
}
echo "浏览量:". $_SESSION['views'];
?>

セッションを破棄

セッション データを削除したい場合は、unset() または session_destroy() を使用できます。関数 。
unset() 関数は、指定されたセッション変数を解放するために使用されます:

<?php
session_start();
if(isset($_SESSION['views']))
{
         unset($_SESSION['views']);
}
?>

session_destroy() 関数を呼び出してセッションを完全に破棄することもできます:

<?php
session_destroy();
?>

注: session_destroy() はセッションをリセットし、セッションが失われます保存されているすべてのセッション データ。

session_id

セッションは各ユーザーのセッションを追跡するために使用され、ユーザーを区別するためにサーバーによって生成されたセッションIDを使用して識別されます。セッションはサーバーのメモリに保存され、SessionID はサーバーのメモリとクライアントの Cookie に保存されます。このように、ユーザーがリクエストを行うと、サーバー

はユーザーのCookieに記録されているセッションIDとサーバーのメモリ内のセッションIDを比較し、ユーザーに対応するセッション

を見つけて操作を実行します。したがって、クライアントが Cookie を無効にすると、セッションは

を使用してセッションを設定および読み取ることができなくなります


Cookie と同様に、連想配列 $_SESSION をサーバー側で操作してセッション内のデータを読み取ることができます

Cookie よりも高度です簡単に言うと、$_SESSION 配列を直接操作して配列要素を追加および削除し、Session

php.ini 設定セッションのすべての操作を実現できます


session.save_path = '/leapsoulcn';

デフォルト値は / です。 tmp は、セッション ファイルが c:/tmp ディレクトリに保存されることを意味します。

学び続ける
||
<?php session_start(); // 存储 session 数据 $_SESSION['views']=1; ?> <html> <head> <meta charset="utf-8"> <title> php中文网(php.cn)</title> </head> <body> <?php // 检索 session 数据 echo "浏览量:". $_SESSION['views']; ?> </body> </html>
  • おすすめコース
  • コースウェアのダウンロード
現時点ではコースウェアはダウンロードできません。現在スタッフが整理中です。今後もこのコースにもっと注目してください〜