當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP session_destroy()用法及代碼示例



定義和用法

會話或會話處理是一種使數據跨 Web 應用程序的各個頁麵可用的方法。這session_status()函數返回當前會話的狀態。

用法

session_destroy();

參數

該函數不接受任何參數。

返回值

這個函數返回一個布爾值,它是TRUE如果會話被成功銷毀並且FALSE如果不。

PHP版本

這個函數最初是在 PHP 版本 4 中引入的,並且適用於所有後續版本。

例子1

下麵的例子演示了session_destroy()函數。

<?php
   //Starting the session
   session_start();   
   if( isset( $_SESSION['counter'] ) ) {
      $_SESSION['counter'] += 1;
   } else {
      $_SESSION['counter'] = 1;
   }	
   $msg = "You have visited this page ". $_SESSION['counter'];
   $msg .= " in this session.";
   if ($_SESSION['counter'] >5){
      session_destroy();
      echo "Session Destroyed ";
   }
?>
<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  echo ( $msg ); ?>
   </body>   
</html>

執行上述 html 文件將顯示以下消息 -

You have visited this page 1 times in this session.

消息中的數字會根據您在不關閉瀏覽器的情況下刷新頁麵的次數而不斷變化。如果您刷新此頁麵超過 5 次,會話將被破壞並顯示以下消息。

Session Destroyed You have visited this page 6 in this session. 

例子2

以下是此函數的另一個示例,在這裏我們有來自同一會話中同一應用程序的兩個頁麵 -

session_page1.htm

<?php
   if(isset($_POST['SubmitButton'])){ 
      //Starting the session	
      session_start();
      $_SESSION['name'] = $_POST['name'];
      $_SESSION['age']  = $_POST['age'];
      print("Enter the values click Submit and click on Next");
      //Destroying the session
      session_destroy();
   }
?>
<html>
   <body>
      <form action="#" method="post">
         <br>
         <label for="fname">Name:</label>
         <input type="text" id="name" name="name"><br><br>
         <label for="lname">Age:</label>
         <input type="text" id="age" name="age"><br><br>           
         <input type="submit" name="SubmitButton"/>
         <?php echo '<br><br /><a href="session_page2.htm">Next</a>'; ?>
      </form>
   </body>
</html>

這將產生以下輸出 -

Session start

點擊時Next執行以下文件。

session_page2.htm

<html>   
   <head>
      <title>Second Page</title>
   </head>
   <body>
      <?php
         //Session started
         session_start();
         print($_SESSION['name']); 
         echo "<br>";
         print($_SESSION['age']);
      ?>   
   </body>   
</html>

通常,該程序應在與以下相同的會話中顯示在前一頁中輸入的姓名和年齡值 -

Krishna
30

由於我們已經在前一個頁麵本身銷毀了會話,因此單擊下一步時將顯示以下錯誤。

Notice:Undefined index:name in session_page2.htm on line 9
Notice:Undefined index:age in session_page2.htm on line 11

相關用法


注:本文由純淨天空篩選整理自 PHP - session_destroy() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。