Re: [v][sf]printf additions (#, E, g, G)
| From: | Marcus Boerger | Date: | Thu, 20 Jul 2006 19:21:12 +0000 |
| Subject: | Re: [v][sf]printf additions (#, E, g, G) | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-24772@lists.php.net to get a copy of this message | ||
Hello Matt,
Thursday, July 20, 2006, 2:20:46 PM, you wrote:
> Hi,
> I've wished there was a *printf() float specifier that wouldn't include
> trailing zeros/point, as simply converting to string (echo, %s, etc.) can
> result in scientific notation, which I *don't* want (%g in
> convert_to_string()). The only other way that would result in what I want
> is number_format() with my "no-extra-zeros option" patch. ;-) So I was
> originally looking for how to NOT pad %f to the specified precision, then I
> thought why not add more of the stuff from C? (And I see it's marked "not
> done" in formatted_print.c.)
> Can/should I go ahead and add support for the # flag/specifier, g/G, and E
> (the missing compliment to e)? Make everything work like C, except # used
> with f/F, which would mean "remove trailing 0's/point" -- as C's behavior
> with # and f (add point even when precision=0?) can be done in PHP. (I
> assume C's is for when precision is specified with * + parameter?)
Having more conversion specifiers here won't hurt. If it can be done
in a way compatible to other languages especially like C it should be
done in that way. If PHP has already closed the way by choosing opposite
defaults the opposite should everntually also work.
Best regards,
Marcus