我如何解析这个未知的数组符号?这个数组表示法来自什么语言?

How can I parse this unknown array notation? What language is this array notation from?

我正在访问旧数据库中的数据,其中一些记录具有此数组符号,它定义了房地产搜索的条件。有几百个,我需要将它们转换成我可以在 JS 和 PHP.

中使用的数据

这是数组表示法的示例。我没能找到关于此格式的任何其他问题。

a:14:{s:2:"id";s:22:"our-listings-metrolist";s:3:"map";a:4:{s:8:"latitude";s:17:"38.93309311783631";s:9:"longitude";s:19:"-120.74187943878752";s:4:"zoom";s:1:"8";s:4:"open";s:1:"0";}s:4:"feed";s:15:"ncarmetrolistca";s:6:"panels";a:2:{s:9:"office_id";a:3:{s:7:"display";s:1:"1";s:9:"collapsed";s:1:"0";s:6:"hidden";s:1:"0";}s:4:"type";a:3:{s:7:"display";s:1:"1";s:9:"collapsed";s:1:"0";s:6:"hidden";s:1:"0";}}s:9:"office_id";s:5:"01PHA";s:11:"search_type";s:0:"";s:3:"idx";s:15:"ncarmetrolistca";s:14:"search_subtype";s:0:"";s:10:"snippet_id";s:22:"our-listings-metrolist";s:13:"snippet_title";s:42:"Our Sacramento / Sierra Foothills Listings";s:10:"page_limit";s:1:"6";s:7:"sort_by";s:17:"DESC-ListingPrice";s:4:"view";s:4:"grid";s:12:"price_ranges";s:4:"true";}

这并不难理解,如果必须的话,我会编写自己的解析器,但我希望不需要。 a定义一个数组,s定义一个字符串,i定义一个整数。每个定义字符后的整数定义数组、字符串或整数的长度,然后在该位置定义的值表示键或值。

这是什么符号?有什么办法可以快速将其解析为可在 JS 和 PHP 中使用的格式。我需要构建自己的解析器吗?

这是php中对象的序列化。

例如:

 $obj = ['a'=>1, 'b'=>true, 'c'=>'foo'];
 echo serialize($obj); /* prints: a:3:{s:1:"a";i:1;s:1:"b";b:1;s:1:"c";s:3:"foo";} */

要反序列化,只需使用 unserialize() 函数。