Hi Maté,
I was reviewing your Query Parameter RFC as I was also checking the new CSV
extension RFC around Type Conversion and I see that currently at least the
following behaviour around float
will be changed.
$data = [
'a' => 0.000000000000034,
'b' => 1.0,
'c' => 1e-10,
];
echo http_build_query($data), PHP_EOL;
// a=3.4E-14&b=1&c=1.0E-10
echo json_encode($data);
// {"a":3.4e-14,"b":1,"c":1.0e-10}
with the browsers implementations using URLSearchParams I get
const q = new URLSearchParams({
'a': 0.000000000000034,
'b': 1.0,
'c': 1e-10,
});
console.log(q.toString())
// a=3.4e-14&b=1&c=1e-10
Maybe the conversion rules difference Uppercase/lowercase for
scientific notation regarding floats should be expressed in the RFC
to avoid surprises.
Best regards,
Ignace