初心者のためのPHPセッション

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 に入れることができます

学び続ける
||
<?php session_start(); $_SESSION['name'] = "admin"; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>session</title> </head> <body> </body> </html>
  • おすすめコース
  • コースウェアのダウンロード
現時点ではコースウェアはダウンロードできません。現在スタッフが整理中です。今後もこのコースにもっと注目してください〜