ฟังก์ชั่น session_decode()

 

ความหมายของฟังก์ชั่นและการใช้งาน

การถอดรหัสข้อมูล session ที่ถูกเข้ารหัสโดย session_encode() ด้วยฟังก์ชั่น session_decode()

 

รูปแบบการเขียน (Syntax)

bool session_decode ( string $data )

 

ตัวอย่างที่ 1

<?php
$_SESSION["test"] = ";oops|";
?>
<?php
class Session {
    public static function unserialize($session_data) {
        $method = ini_get("session.serialize_handler");
        switch ($method) {
            case "php":
                return self::unserialize_php($session_data);
                break;
            case "php_binary":
                return self::unserialize_phpbinary($session_data);
                break;
            default:
                throw new Exception("Unsupported session.serialize_handler: " . $method . ". Supported: php, php_binary");
        }
    }

    private static function unserialize_php($session_data) {
        $return_data = array();
        $offset = 0;
        while ($offset < strlen($session_data)) {
            if (!strstr(substr($session_data, $offset), "|")) {
                throw new Exception("invalid data, remaining: " . substr($session_data, $offset));
            }
            $pos = strpos($session_data, "|", $offset);
            $num = $pos - $offset;
            $varname = substr($session_data, $offset, $num);
            $offset += $num + 1;
            $data = unserialize(substr($session_data, $offset));
            $return_data[$varname] = $data;
            $offset += strlen(serialize($data));
        }
        return $return_data;
    }

    private static function unserialize_phpbinary($session_data) {
        $return_data = array();
        $offset = 0;
        while ($offset < strlen($session_data)) {
            $num = ord($session_data[$offset]);
            $offset += 1;
            $varname = substr($session_data, $offset, $num);
            $offset += $num;
            $data = unserialize(substr($session_data, $offset));
            $return_data[$varname] = $data;
            $offset += strlen(serialize($data));
        }
        return $return_data;
    }
}
?>

Usage:

<?php
Session::unserialize(session_encode());
?>

 

 

<< PHP Functions 

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ปัจจัยที่ทำให้เกิด Spam score ในเว็บไซต์
โดย athirach.offcial จ 01 เม.ย. 2024 11:27 am บอร์ด Share Knowledge
0
108
จ 01 เม.ย. 2024 11:27 am โดย athirach.offcial View Topic ปัจจัยที่ทำให้เกิด Spam score ในเว็บไซต์
Dell Optiplex 980 ไม่รองรับแรม Rank แบบ Single Rank
โดย mindphp จ 01 เม.ย. 2024 1:55 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
336
จ 01 เม.ย. 2024 1:55 am โดย mindphp View Topic Dell Optiplex 980 ไม่รองรับแรม Rank แบบ Single Rank
การจัดประเภทของการ Test โปรแกรม
โดย athirach.offcial ส 30 มี.ค. 2024 12:54 pm บอร์ด Software testing
0
191
ส 30 มี.ค. 2024 12:54 pm โดย athirach.offcial View Topic การจัดประเภทของการ Test โปรแกรม
เทคนิคการเขียน Test Case ให้ครอบคลุม
โดย athirach.offcial ส 30 มี.ค. 2024 12:50 pm บอร์ด Software testing
0
141
ส 30 มี.ค. 2024 12:50 pm โดย athirach.offcial View Topic เทคนิคการเขียน Test Case ให้ครอบคลุม
Automated test เหมาะสำหรับงานเทสแบบไหน
โดย athirach.offcial ส 30 มี.ค. 2024 12:46 pm บอร์ด Software testing
0
148
ส 30 มี.ค. 2024 12:46 pm โดย athirach.offcial View Topic Automated test เหมาะสำหรับงานเทสแบบไหน
การตรวจสอบภาคจ่ายไฟให้กับ HDD และการระบุปัญหา คอมใช้สัดพักแล้วดับ เครื่อง รีสตาร์ทเอง
โดย mindphp ส 30 มี.ค. 2024 12:43 pm บอร์ด Microsoft Office Knowledge & line & Etc
1
165
ส 30 มี.ค. 2024 12:51 pm โดย mindphp View Topic การตรวจสอบภาคจ่ายไฟให้กับ HDD และการระบุปัญหา คอมใช้สัดพักแล้วดับ เครื่อง รีสตาร์ทเอง
การใช้ Selenium เพื่อเช็คความเร็วของหน้าเว็บ
โดย athirach.offcial ส 30 มี.ค. 2024 12:39 pm บอร์ด Software testing
0
163
ส 30 มี.ค. 2024 12:39 pm โดย athirach.offcial View Topic การใช้ Selenium เพื่อเช็คความเร็วของหน้าเว็บ
การใช้ Python เขียนโปรแกรม GUI เพื่อใช้รัน Selenium
โดย athirach.offcial ส 30 มี.ค. 2024 12:35 pm บอร์ด Software testing
0
165
ส 30 มี.ค. 2024 12:35 pm โดย athirach.offcial View Topic การใช้ Python เขียนโปรแกรม GUI เพื่อใช้รัน Selenium