|
|
|
@ -189,8 +189,13 @@ static int php_json_encode_array(smart_str *buf, zval *val, int options, php_jso |
|
|
|
php_json_pretty_print_char(buf, options, '\n'); |
|
|
|
php_json_pretty_print_indent(buf, options, encoder); |
|
|
|
|
|
|
|
php_json_escape_string(buf, ZSTR_VAL(key), ZSTR_LEN(key), |
|
|
|
options & ~PHP_JSON_NUMERIC_CHECK, encoder); |
|
|
|
if (php_json_escape_string(buf, ZSTR_VAL(key), ZSTR_LEN(key), |
|
|
|
options & ~PHP_JSON_NUMERIC_CHECK, encoder) == FAILURE && |
|
|
|
(options & PHP_JSON_PARTIAL_OUTPUT_ON_ERROR) && |
|
|
|
buf->s) { |
|
|
|
ZSTR_LEN(buf->s) -= 4; |
|
|
|
smart_str_appendl(buf, "\"\"", 2); |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (need_comma) { |
|
|
|
smart_str_appendc(buf, ','); |
|
|
|
|