我有一个循环遍历一组行的每个循环,每行都有一个安装日期,但我只希望从所有行循环中获得最早的安装日期,这可能是循环中的任何随机行。我该怎么做?我应该只创建一个日期数组然后对其进行排序,还是应该每次循环检查?代码示例最好。日期的格式仅为:2012-09-04
foreach($lines as $line){
$install_date = $line->installation_date_c;
$water_cost = $line->water_cost_c;
$energy_cost = $line->energy_cost_c;
$oweeks = 52;
$oyears = $line->operating_years_c;
$default_curr = $line->currency_id;
}
答案 0 :(得分:3)
有很多方法可以实现这一点,也许是大致相同的事情?
$lowestDate = strtotime($lines[0]);
foreach($lines as $line){
if(strtotime($line) < $lowestDate){
$lowestDate = strtotime($line);
}
}
echo "lowest date = " . date( 'y-m-d', $lowestDate);
答案 1 :(得分:0)
试试这个:
$lines = your array;
$sort = array();
foreach($lines as $key=>$line){
$install_date[$key] = $line->installation_date_c;
}
array_multisort($install_date, SORT_DESC, $lines);
echo "<pre>";
print_r(current($lines));