【问题标题】:how to find nearest lower and upper value of sp?如何找到最近的 sp 的下限值和上限值?
【发布时间】:2015-02-03 15:43:46
【问题描述】:

例子:

Array
(
[0] => stdClass Object
    (
        [Big] => 1.32
        [FAN_MODEL] => AFPV3G-500-2800
        [FAN_DIA] => 500
        [FAN_RPM] => 2800
        [FAN_SERIES_NAME] => AFPV3G
        [BigVALUE] => 26.00
        [FAN_CMH] => 10000
        [BigPEAK_POWER] => 800.00
        [Bigoutlet_velocity] => 14.15
        [velocity_pressure] => 12.253
        [Bigtotal_velocity] => 13.57
        [SP1] => 8
        [SP2] => 5
        [SP3] => 7
        [SP4] => 7
        [SP5] => 7
        [SP6] => 7
        [SP7] => 7
        [SP8] => 7
        [SP9] => 7
        [SP10] => 7
        [Bigtotal_eff] => 0.33
        [static_eff] => 0.03
        [BigBKW] => 1.120
    )

[1] => stdClass Object
    (
        [STATIC_PRESSURE] => 0.34
        [FAN_DIA] => 630
        [FAN_RPM] => 1460
        [FAN_MODEL] => 
        [FAN_SERIES_NAME] => AFPV3G
        [BLADE_ANGLE_VALUE] => 25.00
        [FAN_CMH] => 10000
        [EQU_PEAK_POWER] => 3601.86
        [outlet_velocity] => 8.92
        [velocity_pressure] => 4.862
        [total_velocity] => 5.20
        [SP2] => 14
        [SP3] => 42
        [SP4] => 41
        [SP5] => 1
        [SP6] => 4
        [SP7] => 4
        [SP8] => 4
        [SP9] => 4
        [SP10] => 1
        [total_eff] => 0.29
        [static_eff] => 0.19
        [BKW] => 0.486
        [Big] => 3.86
        [BigVALUE] => 26.00
        [BigPEAK_POWER] => 360.19
        [Bigoutlet_velocity] => 8.92
        [Bigtotal_velocity] => 8.72
        [SP1] => 1
        [Bigtotal_eff] => 0.43
        [BigBKW] => 0.547
    )

[2] => stdClass Object
    (
        [SP1] => 1
        [FAN_MODEL] => 
        [Big] => 3.86
        [FAN_DIA] => 630
        [FAN_RPM] => 1460
        [FAN_SERIES_NAME] => AFPV3G
        [BigVALUE] => 26.00
        [FAN_CMH] => 10000
        [BigPEAK_POWER] => 360.19
        [Bigoutlet_velocity] => 8.92
        [velocity_pressure] => 4.862
        [Bigtotal_velocity] => 8.72
        [SP2] => 14
        [SP3] => 42
        [SP4] => 41
        [SP5] => 1
        [SP6] => 4
        [SP7] => 4
        [SP8] => 4
        [SP9] => 4
        [SP10] => 1
        [Bigtotal_eff] => 0.43
        [static_eff] => 0.19
        [BigBKW] => 0.547
    )

[3] => stdClass Object
    (
        [Big] => 23.69
        [FAN_MODEL] => 
        [FAN_DIA] => 710
        [FAN_RPM] => 1450
        [FAN_SERIES_NAME] => AFPV3G
        [BigVALUE] => 25.00
        [FAN_CMH] => 10000
        [BigPEAK_POWER] => 6414.48
        [Bigoutlet_velocity] => 7.02
        [velocity_pressure] => 3.014
        [Bigtotal_velocity] => 26.70
        [SP1] => 3
        [SP2] => 4
        [SP3] => 5
        [SP4] => 6
        [SP5] => 7
        [SP6] => 3
        [SP7] => 2
        [SP8] => 1
        [SP9] => 2
        [SP10] => 3
        [Bigtotal_eff] => 0.62
        [static_eff] => 0.55
        [BigBKW] => 1.180
    )

)

我必须在数组 [0]-> STATIC_PRESSURE=0.34 的每一组 sp1 到 sp10 中找到最接近的值, 数组[2]->1 数组[3]->23.等等.. 请帮帮我,我是结构。

【问题讨论】:

    标签: php arrays object laravel


    【解决方案1】:

    这会搜索名称为“SPx”的每个数组键中的最大值,其中 x 表示数字,也许您可​​以在此基础上进行构建,因为我不明白您的意思是“使用 STATIC_PRESSURE=0.34, aray[2]->1数组[3]->23.等等..”

    $count = 0;
    $max = array();
    foreach ($array as $values) { 
            $max[$count] = 0;
        foreach ($values as $key => $val) {
            if(preg_match('/SP\d/', $key)===1){
                if($val>$max[$count]){
                    $max[$count] = $val;
                }
            } 
        }
        $count++;    
    }
    var_dump($max);
    

    【讨论】:

    • 我想在每组 sp 中找到最接近的上限和下限
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-14
    相关资源
    最近更新 更多