Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:103682 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 72087 invoked from network); 4 Jan 2019 20:23:07 -0000 Received: from unknown (HELO mout.gmx.net) (212.227.15.15) by pb1.pair.com with SMTP; 4 Jan 2019 20:23:07 -0000 Received: from [192.168.2.103] ([91.8.175.134]) by mail.gmx.com (mrgmx001 [212.227.17.190]) with ESMTPSA (Nemesis) id 0LvlTo-1hOWQm1tk4-017UYZ for ; Fri, 04 Jan 2019 17:56:16 +0100 To: internals@lists.php.net References: Message-ID: <694cd4a4-10e8-6896-eedf-3abdef0d427d@gmx.de> Date: Fri, 4 Jan 2019 17:56:19 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: de-DE Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:fGqYqPRaBrbW0xo/xdyNiRgMCBKhDNZK+jSF7oEUoVhQbPxc5yK 9S1xX6+s1glioTJlP9NKOPc+4yVngk747TBNrv0y+PSOvddCvZ4VaZQxHvDcqK9X+1SFxHo I6NQFWqTox+xQyfJRnSjEwQRRRorcpw05XhE9KET3z0C1NErDhD1hrIBnKfHlVUS1q4DiWR Dx1qeXw5jAWB+mgnQEvLg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:xYKM42QexpI=:ZqQrjKnKeqZy3O9a3IuKEA Kj0DX5DTNChSAzof8WiEANHOHhdmFlnU9j2Y7T+X6pnUXbjbSrnPKDB2LNJ8ltFbLgvP6Ndl7 5dfu/p4KynM4Pu41c8ckoHASHi+xEbXIpFS59AUA4sruX0VDqPhq6IWxa2ZICWLhrpomUHikU xj4WeHpo+QLdbW/lMK7nNHRKZH//kGyz52LAQxAeeihw1CrHuJ79vPQplJTN7BXhwRlOuAQVM i8182YbSlxOjbAh/d5krZPPe1qQvZfneICedRifMGnkr+zjUmmAltYCkPCYYL2Angbv394JP1 AE9G6yMFWUacpuFZwS6k22Yh5LRMNeVAYp0QwNEfLLPJT3/DGvMmM+Dz7pOF27DVUdftac7JH 3Mm0hUYfZ63VadkCPrmG9Xx6767yh2Hgpdy9ivcUuZ+hQjCGz8zH/cFvVPO8yvffOErajPmIi Wg/qyVfdzaTczMTT1gkHKgGD7bDSRb137TgDys6PJTrIoi8P0jz/kwuU7Edok0CwplGe5UtXE QEx4zYszRxRsYIYc01zY1Siok/evZMiMeniaUK4Rho5/ul3EmmmEnsfwhzBFKm/quik2VUfb3 rOjqMSkS1l3LVjud22PIRPJ55yLqr97Eh+XqAbz8S/Qv9F/No4wX2DQXYLB3Y6tuulhrpw8HX weat5AS4pbObV4dtjMInDQwlFJn6di+B5EHBU43BlTvQqE140uLo0jJU10RixV1sJ6RsSVmKR rUzMGG8nEbIexM9pjC5cdj+dnBdfC3P/Ay+9vq+ghUJMNJU7OXWr1foFRDa+sVUOS5WbJ13zs WJDhdt3uRIaT+hyzMRLGSKNZhqKNVeOrvmYO6ZYTmlc97LS0/8wVzZeC8Npvqfb7UtfJ40bmo SBNS40/+TAbH3UH6bRd/hCittMXHeieJ5s4pMiT+cGgOZaQG5ZDTP4l+u/+f8s Subject: Re: Inconsistent float to string vs. string to float casting From: cmbecker69@gmx.de ("Christoph M. Becker") On 26.12.2018 at 16:47, Christoph M. Becker wrote: > Regarding the decimal separator (aka. decimal point), the behavior of > casting float to string is inconsistent with casting string to float. > While the former regards the current locale, the latter always expects a > decimal point regardless of the locale. This breaks round-trips for > locales which use something else than a dot as decimal separator (e.g. > German, which uses a comma), for instance: > > $float = 1/3; // float(0,33333333333333) > $string = (string) $float; // string(16) "0,33333333333333" > $float = (float) $string; // float(0) Well, there's a special case, though: $string = (1/3) . 'foo'; // string(19) "0.33333333333333foo" This is caused by a compile-time optimization, which obviously occurs before any locale *can* be set. -- Christoph M. Becker