2012-06-05 79 views
3

我在數據庫的Wordpress中看到它,現在我看到類似的cookie。什麼樣的解析器解析這個:這個編碼叫什麼?

a:4:{s:14:"clientsorderby";s:9:"firstname";s:12:"clientsorder";s:4:"DESC";s:13:"ordersorderby";s:2:"id";s:11:"ordersorder";s:4:"DESC";} 

我明白了,它是一個數組= X =一些兒童S =字符串:X =字符數。

有沒有解析器內置到PHP的這種事情?爲什麼他們使用這種方法?

+2

的http:// PHP .net/manual/en/function.serialize.php – 2012-06-05 03:44:20

回答

6

這是PHP的內置serialize(),可 「解碼」 與unserialize()

下面是一個例子:

$serialized = 'a:4:{s:14:"clientsorderby";s:9:"firstname";s:12:"clientsorder";s:4:"DESC";s:13:"ordersorderby";s:2:"id";s:11:"ordersorder";s:4:"DESC";}'; 
$unserialized = unserialize($serialized); 

var_dump($unserialized); 

輸出:

array(4) { 
    ["clientsorderby"]=> 
    string(9) "firstname" 
    ["clientsorder"]=> 
    string(4) "DESC" 
    ["ordersorderby"]=> 
    string(2) "id" 
    ["ordersorder"]=> 
    string(4) "DESC" 
} 
+0

感謝@nickb的編輯:) –