fix php map, add test case for get inventory

This commit is contained in:
wing328
2015-06-05 13:16:30 +08:00
parent 59ca8bd986
commit d0f9345c5a
3 changed files with 21 additions and 9 deletions

View File

@@ -376,17 +376,16 @@ class ApiClient {
{
if (null === $data) {
$deserialized = null;
} elseif (substr($class, 0, 4) == 'map[') {
} elseif (substr($class, 0, 4) == 'map[') { # for associative array e.g. map[string,int]
$inner = substr($class, 4, -1);
$values = array();
$deserialized = array();
if(strrpos($inner, ",") !== false) {
$subClass_array = explode(',', $inner, 2);
$subClass = $subClass_array[1];
foreach ($data as $key => $value) {
$values[] = array($key => self::deserialize($value, $subClass));
$deserialized[$key] = self::deserialize($value, $subClass);
}
}
$deserialized = $values;
} elseif (strcasecmp(substr($class, 0, 6),'array[') == 0) {
$subClass = substr($class, 6, -1);
$values = array();