我想从下面的每个日期获得最低日期。
foreach ($check_date AS $value) {
if ($result[$i][$j]['date'] == $value['date'] ) {
if ($value['date_type'] == '1') {
$result[$i][$j]['value'] = -555;
} else if ($value['date_type'] == '2') {
$result[$i][$j]['value'] = -666;
}
}
if ($j < $limit - 1 && $result[$i][$j + 1]['date'] == $value['date'] ) {
print_r($result[$i][$j + 1]['date'] );
if ($value['date_type'] == '1') {
$result[$i][$j]['value'] = 0;
} else if ($value['date_type'] == '2') {
$result[$i][$j]['value'] = 0;
}
}
}
print_r($result[$i][$j + 1]['date'] );
打印2016-03-212016-03-22。我想从这里得到2016-03-21。
如何实现这一点。
答案 0 :(得分:1)
我认为您只想在使用print_r
的地方使用最低日期。所以下面的代码就是针对这种情况。
您可以使用变量存储此最小日期,然后在if之前初始化它。并在每个循环上检查是否没有或更小。
所以代码应该是这样的:
$min_date = false;
foreach ($check_date AS $value) {
if ($result[$i][$j]['date'] == $value['date'] ) {
if ($value['date_type'] == '1') {
$result[$i][$j]['value'] = -555;
} else if ($value['date_type'] == '2') {
$result[$i][$j]['value'] = -666;
}
}
if ($j < $limit - 1 && $result[$i][$j + 1]['date'] == $value['date'] ) {
if($min_date === false || $min_date > $result[$i][$j + 1]['date'] ) {
$min_date = $result[$i][$j + 1]['date'];
}
print_r($result[$i][$j + 1]['date'] );
if ($value['date_type'] == '1') {
$result[$i][$j]['value'] = 0;
} else if ($value['date_type'] == '2') {
$result[$i][$j]['value'] = 0;
}
}
}
echo $min_date; // Here you will have the lowest date.