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";}

我明白了,它的 a=array:x=number of children s=string:x=number of characters。

php 中是否有针对这种事情的内置解析器?他们为什么使用这种方法?

4

1 回答 1

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"
}
于 2012-06-05T03:44:06.257 回答