ホームページ  >  記事  >  バックエンド開発  >  PHPはセッションとCookieを操作します

PHPはセッションとCookieを操作します

伊谢尔伦
伊谢尔伦オリジナル
2016-11-26 16:24:54872ブラウズ

ユーザーログインの検証、ユーザーの閲覧履歴の記録、ショッピングカートデータの保存、ユーザーセッションの有効時間の制限など、ユーザー情報を追跡する際にはセッションとCookieを使用する必要があります。今日は、PHP がセッションと Cookie をどのように操作するかを学びます。

Session

PHP の $_SESSION は、ユーザーが WEB ウェブサイトにアクセスすると、PHP によって訪問ユーザーごとにセッション ID が作成され、クライアント マシンに保存されます。ユーザーのセッションデータはサーバーに保存されますが、セッションが期限切れになると、ユーザーのセッション情報も無効になります。

セッションを使用する場合、PHP セッションを使用する場合は、必ず session_start() をページのヘッダーに追加して、サーバーにセッションの使用を開始するように指示してください。その前に出力があってはなりません。そうしないと、エラーが報告されます。

  <?php 
session_start();  
  //PHP 代码...  ?>

PHP の設定とセッションの取得

PHP の $_SESSION を使用して、次のようなセッション データを設定および取得できます。

<?php 
session_start();   
  //设置一个session值  $_SESSION["name"] = "Hello";  
  //将session以数组形式保存  $_SESSION["arr"] = array(&#39;name&#39; => &#39;Hello&#39;, &#39;url&#39; => &#39;http://www.helloweba.com&#39;, &#39;type&#39;=> &#39;website&#39;);  ?>

セッション データが保存されたら、Web サイトでセッションを使用できます。別のページでセッション データを取得できます:

 <?php 
session_start();   
  //获取保存的Session name   echo $_SESSION["name"]; 
  //打印数组session 
print_r($_SESSION["arr"]);  ?>

PHP セッションの削除

セッションが使用されなくなったら、PHP を使用してセッション データを削除およびクリアできます。方法は次のとおりです。現在のユーザーのすべてのセッション情報をクリアするには、次のコードを使用できます:

<?php  unset($_SESSION["name"]);  ?>

Cookie

Cookie は、ユーザーがアクセスした Web サイトサーバーによって現在のクライアントコンピューター上に作成される一時ファイルです。ユーザーが次回ウェブサイトを訪問するときにウェブサイトサーバーがユーザー情報を識別できるようにするための情報。ユーザーインターフェイス、ユーザーID、その他のデータを保存するために共通のCookieが使用されます。

PHP Set Cookie

PHP の setcookie() を使用して、クライアント上で Cookie を作成できます。この関数は、Cookie 名、値、有効期間という 3 つの主要なパラメーターを提供します。

 <?php 
session_destroy();  ?>

上記のコードを実行すると、Chrome という名前の Cookie が作成され、クライアントに 1 時間保存されます。Cookie 情報は 1 時間後に期限切れになります。

PHP は Cookie を受け取ります

Cookie が作成された後、PHP の $_COOKIE を使用して Cookie の値を簡単に取得できます。使用方法は次のとおりです:

<?php  $cookie_val = &#39;Chrome&#39;;  
setcookie("browser", $cookie_val, time()+3600);   ?>

PHP Cookie の削除

machine Cookie 情報については、次のコードを使用できます:

<?php  if(isset($_COOKIE[&#39;browser&#39;])) { 
    echo &#39;您的浏览器是:&#39; . $_COOKIE[&#39;browser&#39;]; 
}  ?>

上記のコードは、ブラウザという名前の Cookie をクリアし、有効期間を 1 時間前に設定して、Cookie 情報を完全にクリアします。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。