Store Float As Index¶
<?php
$array = [1 => 0,
// Implicit conversion from float 1.2 to int loses precision
1.2 => 1,
// as string, it fits!
'1.1' => 2,
];
With PHP, floats cannot be used directly as array indexes because array keys must be either integers or strings. If you attempt to use a float as an index, PHP will automatically cast it to an integer, potentially causing unexpected behavior. However, you can explicitly cast the float to a string to preserve its precision as an index. Later, due to PHP’s type juggling, you can still perform arithmetic with it seamlessly.
See Also¶
Storing float as keys [Try me]
PHP Features¶
Last updated: 14 July 2026