我有一个csv文件,我正在尝试获取特定列的最小值。然而,即使在爆炸值之后,我也没有得到确切的值。在我爆炸后,我对它执行var_dump,它为每个不同的行生成一个不同的数组;所以列中的每个值都是不同数组的第一个元素。如何将这些不同的数组合并到一个数组中以便在列中找到最小值,或者还有其他方法可以解决这个问题吗?以下是我的代码。任何帮助将不胜感激。
合并
while (($data = fgetcsv($handle, 0, ",")) !== false) {
$table2Add =false;
if($row >=$x && $row <=$y) {
$table2Add=true; }
if($row == 1) {
$table2 .= '<thead><tr>';
$table2 .= '<th></th>';
$table2 .= '<th>Min</th>';
$table2 .= '<th>Max</th>';
$table2 .= '<th>Average</th>';
$table2 .= '</tr></thead><tbody>';
}
else {
if($table2Add) $table2 .= '<tr><th>Voltage</th>';
for($c = 0; $c <= 10; $c++) {
$value = empty($data[$c]) ? " " : $data[$c];
if($c==1) {
var_dump((explode('STRING',$data[$c])));
//$ar=explode('STRING', $data[$c]);
//var_dump(min($ar));
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
if($c==2) {
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
if($c==3) {
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
}
if($table2Add) $table2 .= '</tr>';
if($table2Add) $table2 .= '<tr><th>Current</th>';
for($c = 0; $c <= 10; $c++) {
$value = empty($data[$c]) ? " " : $data[$c];
if($c==4) {
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
if($c==5) {
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
if($c==6) {
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
}
if($table2Add) $table2 .= '</tr>';
if($table2Add) $table2 .= '<tr><th>Power Factor</th>';
for($c = 0; $c <= 10; $c++) {
$value = empty($data[$c]) ? " " : $data[$c];
if($c==7) {
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
if($c==8) {
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
if($c==9) {
if ($table2Add) $table2 .='<td>'.round($value,2).'</td>';
}
}
if($table2Add) $table2 .= '</tr>';
}
$row++;
}