1. セッションとは何ですか? セッション変数は、ユーザー セッション (セッション) に関する情報を保存したり、ユーザー セッション (セッション) の設定を変更したりするために使用されます。セッション変数には 1 人のユーザーの情報が保存され、アプリケーション内のすべてのページで使用できます
2.php セッション変数
コンピューター上でアプリケーションを操作するときは、アプリケーションを開いて変更を加え、その後閉じます。それは会話によく似ています。コンピューターはあなたが誰であるかを知っています。アプリを開いたり閉じたりするタイミングを認識します。しかし、インターネットでは問題が発生します。HTTP アドレスは状態を維持できないため、Web サーバーはユーザーが誰で何をしているのかを知りません。
PHP セッションは、後で使用できるようにユーザー情報 (ユーザー名、購入したアイテムなど) をサーバーに保存することで、この問題を解決します。ただし、セッション情報は一時的なものであり、ユーザーがサイトを離れると削除されます。情報を永続的に保存する必要がある場合は、データをデータベースに保存できます。
セッションは、訪問者ごとに一意の ID (UID) を作成し、この UID に基づいて変数を保存することで機能します。 UID は Cookie に保存されるか、URL を通じて渡されます。
3.
セッションを開くsession_start();
<?php session_start(); $_SESSION['name'] = "admin"; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>session</title> </head> <body> </body> </html>
上記のコードに示されているように、セッションが開かれているため、セッションにデータを保存または取得したい場合は、まずセッションを開く必要があります
。セッションが開かれると、セッションに保存されたデータを他のページから呼び出すことができます
データをセッション変数に保存します<?php
session_start();
$_SESSION['name'] = "admin";
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>session</title>
</head>
<body>
</body>
</html>
このようにして、変数 $_SESSION['name'] に を保存しますadmin の値
と
出力セッション<?php
session_start();
$_SESSION['name'] = "admin";
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>session</title>
</head>
<body>
<?php
echo "欢迎您:".$_SESSION['name']."!";
?>
</body>
</html>
別のファイルに
<?php
を記述すると、 echo "Welcome: ".$_SESSION['name']."!"; >
セッション内の名前の値を出力することもできます
一部のセッションデータを削除したい場合は、unset()またはsession_destroy()関数を使用できます。
unset() 関数は、指定されたセッション変数を解放するために使用されます
session_disstroy() は、通常、セッションを破棄するために使用されます
たとえば、最初のページではセッションを使用していますが、閉じられていません。 2 番目のページに移動すると
<?php
session_distroy();
?>
これでセッションがクリアされます
セッションとクッキーの違い
1. Cookie データはお客様のブラウザ上でサーバーに保存されます。
2. Cookie はあまり安全ではありません。ローカルに保存された COOKIE を他人が解析して COOKIE を欺く可能性があります
セキュリティを考慮して、セッションを使用する必要があります。3. セッションは一定期間内にサーバーに保存されます。アクセスが増えるとサーバーのパフォーマンスをさらに消費します
サーバーのパフォーマンスを下げることを考慮して、COOKIEを使用する必要があります。
4. 1 つの Cookie によって保存されるデータは 4K を超えることができず、サイトで保存できる Cookie は 20 個までに制限されています。
5. 個人的な提案:
ログイン情報などの重要な情報を SESSION として保存します
他の情報を保持する必要がある場合は、それを COOKIE に入れることができます