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