Использовать PHP для генерации случайного десятичного числа до двух децимал Мне нужно создать случайное число, до 10-го пятна между двумя десятичными знаками в PHP. Ex. Число rand между 1.2 и 5.7. Он вернет 3.4 Как я могу это сделать? Ответ 1 Вы можете использовать: rand ($min*10, $max*10) / 10 или даже лучше: mt_rand ($min*10, $max*10) / 10 Ответ 2 Более общее решение было бы: function count_decimals($x){ return strlen(substr(strrchr($x+"", "."), 1)); } public function random($min, $max){ $decimals = max(count_decimals($min), count_decimals($max)); $factor = pow(10, $decimals); return rand($min*$factor, $max*$factor) / $factor; } $answer = random(1.2, 5.7); Ответ 3 Вы можете сделать что-то вроде: rand(12, 57) / 10 Случайная функция PHP позволяет использовать только целые пределы, но затем вы можете разделить полученное случайное число на 10.
Ответ 1 Вы можете использовать: rand ($min*10, $max*10) / 10 или даже лучше: mt_rand ($min*10, $max*10) / 10
Ответ 2 Более общее решение было бы: function count_decimals($x){ return strlen(substr(strrchr($x+"", "."), 1)); } public function random($min, $max){ $decimals = max(count_decimals($min), count_decimals($max)); $factor = pow(10, $decimals); return rand($min*$factor, $max*$factor) / $factor; } $answer = random(1.2, 5.7);
Ответ 3 Вы можете сделать что-то вроде: rand(12, 57) / 10 Случайная функция PHP позволяет использовать только целые пределы, но затем вы можете разделить полученное случайное число на 10.