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


PHP session_decode()用法及代碼示例



定義和用法

會話或會話處理是一種使數據跨 Web 應用程序的各個頁麵可用的方法。這session_decode()函數接受一個編碼的序列化會話字符串並將其解碼並將其存儲在 $_SESSION 變量中。

用法

session_decode($data);

參數

該函數不接受任何參數。

返回值

此函數返回一個布爾值,成功時為 TRUE,失敗時為 False。

PHP版本

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

例子1

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

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php 
         //Starting the session
         session_start();   
         $_SESSION['data'] = "This is sample data";
         $res = session_encode();
         print("Encoded Data:".$res);
         echo "<br>";
         
         //Decoding the session
         session_decode($res);
         print_r($_SESSION);		 
      ?>
   </body>   
</html>

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

Encoded Data:data|s:19:"This is sample data";
Array ( [data] => This is sample data ) 

例子2

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

session_page1.htm

<html>
   <body>
      <form action="#" method="post">
         <br>
         <label for="fname">Enter the values click Submit and click on Next</label>
         <br><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>';
            if(isset($_POST['SubmitButton'])){ 
               //Starting the session	
               session_start();
               $_SESSION['name'] = $_POST['name'];
               $_SESSION['age']  = $_POST['age'];
               $res = session_encode();
               echo "<br><br>Encoded Data:". $res;
               session_decode($res);
               print_r($_SESSION);
            }
         ?>
      </form>
   </body>
</html>

這將產生以下輸出 -

Session start

點擊提交按鈕後,上麵的頁麵看起來像 -

Session encode

點擊時Next執行以下文件。

session_page2.htm

<html>   
   <head>
      <title>Second Page</title>
   </head>
   <body>
      <?php
         //Session started
         session_start();
         $_SESSION['City'] = 'Hyderabad'; 
         $_SESSION['Phone'] = '9848022338';
         $res = session_encode();
         echo "Encoded Data:". $res;
         session_decode($res);
         print_r($_SESSION);
      ?>   
   </body>   
</html>

這將產生以下輸出 -

Encoded Data:name|s:7:"krishna";age|s:2:"30";City|s:9:"Hyderabad";Phone|s:10:"9848022338";Array ( [name] => krishna [age] => 30 [City] => Hyderabad [Phone] => 9848022338 )

相關用法


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