|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2007-10-02 16:55 UTC] naweokawa at free dot fr
Description: ------------ When you use the function number_format with a float value, it seems to returns a value INPUT_FLOAT*100 Reproduce code: --------------- $num2=123456.55; number_format($num2 , 2, ',', ' '); // OUTPUT output : 12 345 655,00 (should be 123 456,55 ) PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Dec 06 17:00:01 2025 UTC |
Hi, I cannot reproduce either. $ uname -a SunOS opteron 5.10 Generic_118855-14 i86pc i386 i86pc $ isainfo -v 64-bit amd64 applications sse3 sse2 sse fxsr amd_3dnowx amd_3dnow amd_mmx mmx cmov amd_sysc cx8 tsc fpu 32-bit i386 applications sse3 sse2 sse fxsr amd_3dnowx amd_3dnow amd_mmx mmx cmov amd_sysc cx8 tsc fpu $ ./php -v PHP 5.2.5-dev (cli) (built: Oct 10 2007 19:51:01) Copyright (c) 1997-2007 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies $ cat ./num.php <? $num2=123456.55; echo number_format($num2 , 2, ',', ' '); ?> $ ./php ./num.php 123 456,55So, I re-test the code again : $ cat num.php <?php $num2=123456.55; echo number_format($num2 , 2, ',', ' ') ."\n"; ?> $ /HOME/php5.2-200710111030_gcc_64/bin/php -f ./num.php 12 345 655,00 $ file /HOME/php5.2-200710111030_gcc_64/bin/php /HOME/php5.2-200710111030_gcc_64/bin/php: ELF 64-bit LSB executable AMD64 Version 1 [SSE2 SSE FXSR FPU], dynamically linked, not stripped Not really same flags like you : $ isainfo -v 64-bit amd64 applications sse2 sse fxsr amd_3dnowx amd_3dnow amd_mmx mmx cmov amd_sysc cx8 tsc fpu 32-bit i386 applications sse2 sse fxsr amd_3dnowx amd_3dnow amd_mmx mmx cmov amd_sysc cx8 tsc fpu $ uname -a SunOS tdb 5.10 Generic_118855-33 i86pc i386 i86pc $ /HOME/php5.2-200710111030_gcc_64/bin/php -v PHP 5.2.5-dev (cli) (built: Oct 11 2007 14:51:34) Copyright (c) 1997-2007 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies $ ldd /HOME/php5.2-200710111030_gcc_64/bin/php librt.so.1 => /lib/64/librt.so.1 libresolv.so.2 => /lib/64/libresolv.so.2 libm.so.2 => /lib/64/libm.so.2 libnsl.so.1 => /lib/64/libnsl.so.1 libsocket.so.1 => /lib/64/libsocket.so.1 libz.so.1 => /usr/lib/64/libz.so.1 libxml2.so.2 => /usr/local/lib/libxml2.so.2 libpthread.so.1 => /lib/64/libpthread.so.1 libc.so.1 => /lib/64/libc.so.1 libaio.so.1 => /lib/64/libaio.so.1 libmd5.so.1 => /lib/64/libmd5.so.1 libmp.so.2 => /lib/64/libmp.so.2 libscf.so.1 => /lib/64/libscf.so.1 libdoor.so.1 => /lib/64/libdoor.so.1 libuutil.so.1 => /lib/64/libuutil.so.1 All is OK on 32bits compilation. That's a zone solaris on Sun Fire v20z (Dual CPU AMD64 Socket940). Greetings.Hi, thanks for the update. I do have the binary linked against the 64 libs but still no luck reproducing the problem with the current snapshot. If I can find some time, I'll try and replicate your setup better, including your newer OS patch level. $ ldd ./php librt.so.1 => /lib/64/librt.so.1 libresolv.so.2 => /lib/64/libresolv.so.2 libm.so.2 => /lib/64/libm.so.2 libnsl.so.1 => /lib/64/libnsl.so.1 libsocket.so.1 => /lib/64/libsocket.so.1 libc.so.1 => /lib/64/libc.so.1 libaio.so.1 => /lib/64/libaio.so.1 libmd5.so.1 => /lib/64/libmd5.so.1 libmp.so.2 => /lib/64/libmp.so.2 libscf.so.1 => /lib/64/libscf.so.1 libdoor.so.1 => /lib/64/libdoor.so.1 libuutil.so.1 => /lib/64/libuutil.so.1 $ ./php ./num.php 123 456,55