php取二维数组最小,二维数组求最小值的问题

我不知道你的编程语言是啥,我用PHP写一下:

$data = [

0 => [

'price1' => 223.50,

'price2' => 149.00

],

1 => [

'price1' => 234.50,

'price2' => 144.00

],

2 => [

'price1' => 250.50,

'price2' => 140.00

],

3 => [

'price1' => 250.50,

'price2' => 0.00

]

];

$minList = [];

$maxList = [];

foreach($data as $key => $item) {

$price1 = $item['price1'];

$price2 = $item['price2'];

$minNum = 0;

if(!empty($price1) && !empty($price2)) {

$minNum = min($price1,$price2);

} else {

if(!empty($price1)) {

$minNum = $price1;

}

if(!empty($price2)) {

$minNum = $price2;

}

}

if(!empty($minNum)) {

$minList[$key] = $minNum;

}

}

$minNumber = min($minList); // 最小数

$minKey = array_search($minNumber);// 最小值下标

根据你修改问题做了修改,数据我就采用我原本写的吧,懒得改了。

至于利用原生函数处理之后的速度与自己进行写代码遍历的两个操作的效率哪个高,没对比过,你可以自己测试一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值