首页 > 解决方案 > php min max 函数无法正常工作

问题描述

我有代码通过使用下面给定的代码从逗号分隔的值范围中获取最小值和最大值

<?php

$price=$_GET['price'];
$grade = str_replace('-', ',', $price);

$number = array($grade);
$max = max($number);
$min = min($number);
echo "min value is $min <br/>";
echo "max value is $max <br/>";

?>

对于输入?price=0-5,4-30,6-50 这应该输出最小值 0 和最大值 50 但我上面的代码给出的输出为

最小值为 0,5,4,30,6,50 最大值为 0,5,4,30,6,50

请指导我在哪里犯错或任何其他工作替代。

标签: php

解决方案


创建数组是不正确的。请为此使用爆炸。Explode 函数会将字符串分解为数组。

第一个参数是要分割字符串的字符,第二个是输入的。在您的情况下,最好在此处添加 str_replace 函数,这样您就不会更改原始输入。

$input = '0-5,4-30,6-50';
$numbers = explode(',', str_replace('-', ',', $input));

现在您可以使用 min 和 max 函数,它们将正常工作。


推荐阅读