ホームページ >バックエンド開発 >PHPチュートリアル >PHP_PHP チュートリアルでの Cookie とセッション テクノロジーの簡単な分析
Cookie は、ユーザーの身元を特定し、セッション追跡を実行するために、一部の Web サイトによってユーザーのローカル端末に保存されるデータ (通常は暗号化された) を指します。
一般的な理解は、あなたが何かを買うために専門店やスーパーマーケットに行くと、そのお店があなたのために会員カードを申請し、将来あなたの身元情報と購入情報がこのカードに保存されるということです。カードがあなたに置かれます。それ以降は、買い物のたびにカードをスワイプするだけでよく、その他の情報を登録したり記録したりする必要はありません。
次に、この段落をウェブにマッピングします。スーパーマーケットのレジカウンターがサーバーであり、あなた自身がクライアントに保存されている Cookie ファイルであり、アカウントのパスワードなどの情報が記録されています。
ただし、注意すべき点は、クッキーは 2 回目に使用した場合にのみ有効になるということです。つまり、スーパーで初めて何かを購入するときに、カードを申請してくれるということです。今後買い物をするときにカードをスワイプすることができますが、2回目以降は買い物をする前にスーパーマーケットはあなたに関する情報を持っていないため、初めてカードをまったく持っていません。 Web サイトに初めてログインするときは、もちろんアカウント、パスワード、その他の情報を入力する必要があります。その後、Cookie を生成して、次回使用するためにローカルに保存できます。
同時に、Cookieにも独自の有効期限があり、期限が切れると無効になり、ローカルのCookieファイルは自動的に削除されます。再度ログインし、アカウントとパスワードを入力して、新しい Cookie を生成する必要があります。これを行う主な目的は安全上の理由です。
(1) クッキーを設定します
そうです例:
りー
各パラメータの使用法については説明しません。ここでは、Cookie を設定する上記の 2 つの方法における時間とパスの分析に焦点を当てます。
最初に0を入れた場合、生存時間が0になることは明らかに不可能です。ブラウザを閉じるとCookieの有効期間が終了することを示します。それらはすべてパスに「/」を入れます。これは、このドメイン名の下にあるすべてのコンテンツ パスが Cookie にアクセスできることを意味します。つまり、この Web サイトの下にあるすべてのページがこの Cookie を追跡できることを意味します。
(2) Cookieを削除します
bool setcookie ( string $name,$value,$expire,$path,$domain,$secure,$httponlyは Cookie の設定と同じです。つまり、Cookie の値がなく、時刻が現在時刻より早く、その後期限切れになります。
(3) クッキーを見る
setcookie("username","user",0,"/"); setcookie("username","user",time()+60*60,"/");誰もがこの男を知っているはずなので、彼に目を無駄にしないでください。
------------------------------------------------ ----------------------------------
--------------------------------私が境界線です----------- ------ ----------------------------
------------------------------------------------ ----------------------------------
セッションとは、エンドユーザーが対話型システムと通信する間の時間間隔を指し、通常は、システムへの登録からログアウトまでに経過した時間を指します。
セッションの動作原理(Baiduより抜粋) (1) セッションが初めて有効になると、一意の識別子がローカル Cookie に保存されます。 (2) まず session_start() 関数を使用すると、PHP は保存されたセッション変数をセッション ウェアハウスからロードします。 (3) PHPスクリプト実行時に、session_register()関数を使用してセッション変数を登録します。 (4) PHP スクリプトの実行が終了すると、破棄されていないセッション変数がローカル セッション ライブラリの特定のパスに自動的に保存されます。このパスは php.ini ファイルの session.save_path で指定できます。 Web ページを閲覧したときにロードして使用できます。
(1) セッションを設定します
session_start();
$_SESSION['username']="user";
(2)删除session
这个相对步骤就多了点,而不是cookie里面一句话搞定。
//开启session session_start(); //注销session session_unset(); //销毁session session_destroy(); //同时销毁本地cookie中的sessionid setcookie(session_name(),"",time()-3600,"/");(3)查看session
print_r($_SESSION);
cookie本身是存放在客户端中,仅占用几kb的内存大小。每次登录网站的时候都会带上本地的cookie进行验证,省去了麻烦的重复输入。但是安全性不是很高,毕竟是存放在本地的文件,虽然都是进行加密了的,一旦电脑数据被盗取,cookie就很有可能会被获取。
session存放在服务器中,占中内存虽小,但是用户基数够大的情况下,会对服务器造成很大的负荷。但是,数据放在服务器上,总归风险降低了许多。虽说没有不透风的墙,不过风也是可以很小很小的,这比喻。。。有同学可能疑问,session使用时,会有sessionid存在本地,一旦获取能否登录。答案当然是否定的,因为每次的id都是不一样的。