使用函数搜索数组中的最小/最大值

时间:2017-01-30 21:52:23

标签: php arrays

我是PHP的新手,我的教授让我在一个有功能的数组中找到最小值和最大值。 我是使用SELECT * FROM makerar m1 WHERE m1.avg = (SELECT MAX(avg) FROM makerar m2 WHERE m1.cname = m2.cname ) foreach完成的,但我不知道如何使用if进行此操作。 这是我的PHP

function

3 个答案:

答案 0 :(得分:0)

出于学术目的,这是创建函数以检索数组的最小值的方法:

function getMinimum (array $array) {
    // assume the 1st element is the minimum
    $min = $array[0]; 

    // iterate through the array
    foreach ($array as $value) {
        // if you find a value that's smallest than the
        // minimum, update the minimum
        if ($min < $value) {
            $min = $value;
        }
    }

    // now return the minimum value
    return $min;
}

// invoke the function
$min = getMinimum($tabnumber);

但是,如果您不需要创建自己的 - 它不清楚练习的目的是什么 - 您可以使用PHP构建它min和{ {3}}函数。

答案 1 :(得分:0)

使用min函数查找最小值和最大值。

for child in snapshot.children.allObjects as! [FIRDataSnapshot] {
    let name = child.key
    if let dic = child.value as? [String:Any], let speed = dic["Speed"] as? Int
       let operator = dic["Operator"] as? String {  
          print(operator)
          self.cellDataArray.append(cellData(mainText: name, Speed: "\(speed)"))
    }
}
DispatchQueue.main.async {
    self.tableView.reloadData()
}

http://php.net/manual/en/function.min.php

答案 2 :(得分:0)

在尝试实现自己的逻辑之前检查PHP函数:

$min = min($tabnumber);
$max = max($tabnumber);

没有这些,没有循环(为了好玩):

sort($tabnumber);
$min = reset($tabnumber); //or $tabnumber[0]
$max = end($tabnumber);