Blame | Letzte Änderung | Log anzeigen | RSS feed
<?phprequire('../fpdf.php');class PDF extends FPDF{// Load datafunction LoadData($file){// Read file lines$lines = file($file);$data = array();foreach($lines as $line)$data[] = explode(';',trim($line));return $data;}// Simple tablefunction BasicTable($header, $data){// Headerforeach($header as $col)$this->Cell(40,7,$col,1);$this->Ln();// Dataforeach($data as $row){foreach($row as $col)$this->Cell(40,6,$col,1);$this->Ln();}}// Better tablefunction ImprovedTable($header, $data){// Column widths$w = array(40, 35, 40, 45);// Headerfor($i=0;$i<count($header);$i++)$this->Cell($w[$i],7,$header[$i],1,0,'C');$this->Ln();// Dataforeach($data as $row){$this->Cell($w[0],6,$row[0],'LR');$this->Cell($w[1],6,$row[1],'LR');$this->Cell($w[2],6,number_format($row[2]),'LR',0,'R');$this->Cell($w[3],6,number_format($row[3]),'LR',0,'R');$this->Ln();}// Closing line$this->Cell(array_sum($w),0,'','T');}// Colored tablefunction FancyTable($header, $data){// Colors, line width and bold font$this->SetFillColor(255,0,0);$this->SetTextColor(255);$this->SetDrawColor(128,0,0);$this->SetLineWidth(.3);$this->SetFont('','B');// Header$w = array(40, 35, 40, 45);for($i=0;$i<count($header);$i++)$this->Cell($w[$i],7,$header[$i],1,0,'C',true);$this->Ln();// Color and font restoration$this->SetFillColor(224,235,255);$this->SetTextColor(0);$this->SetFont('');// Data$fill = false;foreach($data as $row){$this->Cell($w[0],6,$row[0],'LR',0,'L',$fill);$this->Cell($w[1],6,$row[1],'LR',0,'L',$fill);$this->Cell($w[2],6,number_format($row[2]),'LR',0,'R',$fill);$this->Cell($w[3],6,number_format($row[3]),'LR',0,'R',$fill);$this->Ln();$fill = !$fill;}// Closing line$this->Cell(array_sum($w),0,'','T');}}$pdf = new PDF();// Column headings$header = array('Country', 'Capital', 'Area (sq km)', 'Pop. (thousands)');// Data loading$data = $pdf->LoadData('countries.txt');$pdf->SetFont('Arial','',14);$pdf->AddPage();$pdf->BasicTable($header,$data);$pdf->AddPage();$pdf->ImprovedTable($header,$data);$pdf->AddPage();$pdf->FancyTable($header,$data);$pdf->Output();?>