From c6b05b2e6b0f13d9610955d48f9b58b9716a3be8 Mon Sep 17 00:00:00 2001 From: "Thies C. Arntzen" Date: Sat, 6 Nov 1999 08:16:25 +0000 Subject: [PATCH] (PHP var_dump, serialize) now use php.ini's precision size when displying/serializing doubles @- serialize() and var_dump() now honor the precision as set in php.ini @ for doubles. (Thies) --- ext/standard/var.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/ext/standard/var.c b/ext/standard/var.c index 5d7301f092..ae709201ca 100644 --- a/ext/standard/var.c +++ b/ext/standard/var.c @@ -53,9 +53,11 @@ void php_var_dump(pval **struc, int level) PHPWRITE(&buf[1], i - 1); break; - case IS_DOUBLE: - i = sprintf(buf, "%*cfloat(%g)\n", level, ' ', (*struc)->value.dval); - PHPWRITE(&buf[1], i - 1); + case IS_DOUBLE: { + ELS_FETCH(); + i = sprintf(buf, "%*cfloat(%.*G)\n", level, ' ', (int) EG(precision), (*struc)->value.dval); + PHPWRITE(&buf[1], i - 1); + } break; case IS_STRING: @@ -199,9 +201,11 @@ void php_var_serialize(pval *buf, pval **struc) STR_CAT(buf, s, slen); return; - case IS_DOUBLE: - slen = sprintf(s, "d:%g;", (*struc)->value.dval); - STR_CAT(buf, s, slen); + case IS_DOUBLE: { + ELS_FETCH(); + slen = sprintf(s, "d:%.*G;",(int) EG(precision), (*struc)->value.dval); + STR_CAT(buf, s, slen); + } return; case IS_STRING:{ -- 2.40.0