1--TEST-- 2Bug #42785 (Incorrect formatting of double values with non-english locales) 3--SKIPIF-- 4<?php 5if (!extension_loaded('json')) die('skip'); 6if (!setlocale(LC_CTYPE, "de_DE", "de", "german", "ge", "de_DE.ISO8859-1", "ISO8859-1")) { 7 die("skip locale needed for this test is not supported on this platform"); 8} 9?> 10--FILE-- 11<?php 12setlocale(LC_ALL, "de_DE", "de", "german", "ge", "de_DE.ISO8859-1", "ISO8859-1"); 13 14$foo = array(100.10,"bar"); 15var_dump(json_encode($foo)); 16 17class bar {} 18$bar1 = new bar; 19$bar1->a = 100.10; 20$bar1->b = "foo"; 21var_dump(json_encode($bar1)); 22?> 23--EXPECT-- 24string(13) "[100.1,"bar"]" 25string(21) "{"a":100.1,"b":"foo"}" 26