- FOREACH_HASH_KEYVAL(pos, ht, key, val) {
- phpstr_appendf(&s, "%s (%ld), ", key.str, Z_LVAL_PP(val));
+ FOREACH_HASH_KEYVAL(pos1, ht, key1, val1) {
+ phpstr_append(&s, key1.str, key1.len-1);
+ phpstr_appends(&s, " (");
+ if (zend_hash_num_elements(Z_ARRVAL_PP(val1))) {
+ FOREACH_KEYVAL(pos2, *val1, key2, val2) {
+ phpstr_append(&s, key2.str, key2.len-1);
+ phpstr_appendf(&s, ":%ld, ", Z_LVAL_PP(val2));
+ }
+ PHPSTR_LEN(&s) -= 2;
+ } else {
+ phpstr_appends(&s, "0");
+ }
+ phpstr_appends(&s, "), ");