2011-09-22 64 views
0

不知道该怎么称呼它。但是,在我的MySQL数据库中,我有一大堆的值是这样的:获取一个mysql数组?

a:2:{i:5;s:10:"likes";i:10;s:10:"likes";} 
a:3:{i:5;s:10:"likes";i:10;s:10:"likes";i:11;s:10:"likes";} 

我的假设下,这是一个数组的形式,我已经在另一个DATABSE见过这个,所以我想这是非常标准的,但有点难倒现在我的问题是什么将是一个查询来检索这些数组中最大的。以便返回a:MAXNUM {“likes”;}。

如果您需要我解释更多,请询问。

回答

2

这是serialized字符串。你可以unserialize他们,他们将是对象或数组。当你反序列化字符串时,你可以简单地计算自己的喜欢次数和最高次数。如果序列化的字符串是一个数组,你可以用简单的PHP函数做到这一点,如果你使用它。

您提供的字符串似乎是PHP序列化的字符串。有关PHP中序列化的更多信息,请参阅here

无论如何,你不能仅使用MySQL反序列化字符串。您需要服务器端语言才能做到这一点,例如PHP。