Formüller ile csv çıktılar üstlenmeden PHP kodu

1 Cevap php

Ben zaten bazı sütunları özetlemek için formüller ile bir tablo yapmak için tasarlanmış bazı PHP kodu var. Bu, aşağıda kod daha bunu yapmak için çok daha şık bir yolu olmalı gibi görünüyor. Iyi aşağıdaki kodu gibi bir şey başarmak olabilir bazı refactorings veya tasarım desenleri nelerdir?

<?
echo ",Current Milestone,Total Hours,Milestone 1 Hours,Milestone 2 Hours,Milestone 3 Hours\n";
$row = 2; 
$totSSRange = ""; 
foreach($departments as $dept){
	$deptStartRow = $row + 1;
	echo $dept['name']."\n";
	foreach($dept['modules'] as $module){
		$row++;
		echo $module['name'].','.$module['ms'].',=SUM(D'.$row.':F'.$row.'),'.$module['m1'].','.$module['m2'].','.$module['m3']."\n";
	}
	$deptSSRange = "C".$deptStartRow.":C".$row; 
	$totSSRange .= $deptSSRange.","; 
	$sumStr = "=SUM(".$deptSSRange.")"; 
	echo 'Sum,,'.$sumStr.','.str_replace("C","D",$sumStr).','.str_replace("C","E",$sumStr).','.str_replace("C","F",$sumStr)."\n\n";
	$row+=3; 
} 
$totSumStr = "\"=SUM(".$totSSRange.")\"";
echo 'Total,,'.$totSumStr.','.str_replace("C","D",$totSumStr).','.str_replace("C","E",$totSumStr).','.str_replace("C","F",$totSumStr);
?>

1 Cevap

PEAR::Spreadsheet_Excel_Writer, aslında sizin bazı iyi tasarım prensiplerini uygulamak, artı tüm girdileri ve normale olacaktır kullanın.