セッションとは何ですか? 専門外の辞書を翻訳すると、会議、会議期間という意味が最初わかりませんでした。不適切な比喩を使用すると (不適切ではありますが、意味は同じです)、セッションとは、あなたと Web サイトとの関係です。セッションはWEBテクノロジーにおいて非常に重要な役割を果たします。 Webページはステートレス接続プログラムであるため、ユーザーの閲覧状況を知ることができません。したがって、ユーザーがこの機能で Web サーバーに再度リクエストを送信するときに確認できるように、セッションを通じてユーザーの関連情報を記録する必要があります。たとえば、一部の Web サイトではユーザーにログインを要求することがよくありますが、その方法は次のとおりです。ユーザーがログインしていることはわかりますか? セッションが存在しない場合、ログイン情報は保持されないため、すべての Web ページでユーザーにユーザー名とパスワードの入力を要求してはどうでしょうか。 S もちろん、セッションはユーザーの身元認証に使用されるだけでなく、将来的には他の側面でも使用される可能性があります。セッションは中国語でセッション期間として説明されます。セッションは、ユーザーがサイトの URL を入力すると開始され、サイトを離れると終了します。 Session は、動的スクリプト言語 ActiveServerPages で最初に登場しました。その機能は非常に強力なので、一言で説明することはできません。
PHP がまだバージョン 3.0 だったとき、セッションは永遠の苦痛でした。 PHP には実行速度が速く、柔軟に使用でき、強力な機能があるという利点がありますが、多くのサイト開発者がセッションの問題を理由に PHP を放棄しました。少なくとも私の上司はそう考えています。当時、PHP3 でセッションを実装するためのソリューションを提供する PHP の無料関数ライブラリは数多くありましたが、どれも本物ではないと感じられました。何千円も出して買った携帯電話に、粗末な俵がついてくるようなものだが、機能は同じなのに、いつも違和感がある。 php4 の登場により、PHP はセッションの問題にカムバックするチャンスを与えられました。セッションの実装は (主に効率の問題により) 理想的ではありませんが、最終的には単独で実装され、実際に使用できます。それで、セッションを何に使うのですか? 私がそれを使わなかったら、あなたは紙を売っていると疑われませんか? OK、セッションが何に使用されるかを見てみましょう。Web サイトで作業したことのある人なら誰でも、あるページの変数 (この章ではすべてサーバー側の変数を指します。以下同様) は次のページでは使用できません。これを実現するにはフォームや URL 文字列などのいくつかの方法がありますが、フォームが自動的に送信されたとしても、遅延はユーザーにとっては不便であり、どちらの方法も非常に困難です。プログラマーの負担が増える。大規模なプロジェクトを開発している場合、これらの追加の負担は無視できません。セッションを使用すると、セッションに登録した変数をグローバル変数として扱うことができます。すごいですね、グローバル変数?このようにして、その用途がわかります。最も重要なものは、ユーザー ID 認証、プログラム ステータスの記録、ページ間のパラメータ転送に使用されます。
まだ満足しないでください。欠点もあります。これはファイルに保存される変数です (もちろん効率的ではありませんが、使用できます他の方法もありますが、非常に面倒です)、オブジェクトを保存できません。対照的に、ASP のセッションはオブジェクト変数を保存し、メモリ変数を使用してセッション変数を保存できます。それでもなぜ php を選ぶのでしょうか? はは、この章を最初から読んでいただければ理解できると思いますが、それでも理解できない場合は、もう一度最初から始めてください。あなたも PHP のエキスパートになれるでしょう ^_^。
セッションはどのように実装されますか?はは、とても奥深いと思いますが、その秘密をお話しましょう。変数を保存するだけなら、これは非常に簡単であることは多くの読者に理解されると思いますが、前に述べたように、http プロトコルはステートレス接続であり、変数が誰に属しているのかをどのようにして知るのでしょうか? Cookie を使用して実現されます。セッション実装中。 Cookie はクライアント、つまりユーザーのマシン上に存在し、ユーザーのブラウザがサーバーに要求すると、セッション ID もサーバーに送信されます。これにより、変数を特定できます。このようにして、セッションが時々失敗する理由を理解するのは難しくありません。信じられない場合は、次のことを試してみてください。IE の「ツール」メニューに「インターネット オプション」メニューがあります。それを開いて、「セキュリティ」->「レベルのカスタマイズ」を選択し、「使用を許可」を変更します。セキュリティ設定の「各会話」で「Cookie」を無効に設定し、セッションが使用できるかどうかを確認してください。これで理解できました。ただし、php4 は、Linux/Unix プラットフォーム上の Cookie のステータスを自動的にチェックし、Cookie が利用できない場合には、セッション ID を URL に自動的に付加して渡します。これがセッションの点で ASP よりも優れている唯一の点です。