소스별로 분류 된 표가 있습니다 (예 : "고객", "재고", "바닥재"). 그들은 다음과 같이 : FPDF 합계를 테이블의 마지막 행에 추가하는 방법은 무엇입니까?
각
가 추가 될 필요가 있고 테이블의 마지막 행에 합계 가격의 목록을 포함합니다.나는 "테이블"배열에 "합계"배열을 연결 문제가 있어요 - 특히
지금까지, 각 테이블의 합계가 다른 함수에서 생성되는 각 테이블의 끝 부분에 각각 총을 표시하는,
여기array(4) { ["Floorstock"]=> int(0) ["Stock"]=> int(0) ["Client"]=> float(32.18) }
내가 내 012을 정의 어디에 : 이것은 다음과 같습니다 배열을 반환
public function setSourceTotalsArray($data)
{
$this->sourceTotals = $data["source_totals"];
return $this->sourceTotals;
}
: 어디 sourceTotals
하는 인스턴스 배열입니다 3,목적 :
function orderDetail($data,$currencyShortCode, $type){
$this->orderType = $type;
list($currencySymbol, $w_symbol, $cellHight) = $this->getOrderDetailHeader($currencyShortCode, $type);
foreach ($data as $d){
$commaValue = $this->addComma((float)$d['value']);
$this->Cell(15,$cellHight,$d['order_no'],'LTB',0,'L');
$this->Cell(20,$cellHight,substr($d['customer'],0,13),'TB',0,'L');
$this->Cell(20,$cellHight,substr($d['company'],0,13),'TB',0,'L');
$this->Cell(20,$cellHight,substr($d['ref'],0,13),'TB',0,'L');
$this->Cell(2,$cellHight,'','TB',0,'R');
$this->Cell($w_symbol,$cellHight,$currencySymbol,'TB',0,'R');
$this->Cell(16-$w_symbol,$cellHight,$commaValue,'TB',0,'R');
$this->Cell(2,$cellHight,'','TB',0,'R');
$this->Cell(10,$cellHight,$d['cat'],'TB',0,'L');
$this->Cell(84,$cellHight,$d['description'],'RTB',0,'L');
$this->Ln($cellHight);
}
//BOTTOM TOTAL
$this->Cell(13,$cellHight,'TOTAL','LRTB',0,'L');
$this->Cell(22,$cellHight,'','TB',0,'L');
$this->Cell(20,$cellHight,'','TB',0,'L');
$this->Cell(20,$cellHight,'','TB',0,'L');
$this->Cell(4,$cellHight,$currencySymbol,'TB',0,'R');
$this->Cell(14,$cellHight,$this->setSourceTotalsArray($data),'TB',0,'R'); //HERE
$this->Cell(2,$cellHight,'','TB',0,'R');
$this->Cell(10,$cellHight,'','TB',0,'L');
$this->Cell(84,$cellHight,'','RTB',0,'L');
}
내가 얼마나 확실하지 않다 :
이if($_SERVER["REQUEST_METHOD"] == "POST"){
$data = json_decode($_POST["printData"],true);
$pdf = new PDF();
// Column headings
$month = $pdf->getMonth($data['month']);
$year = $data['year'];
$pdf->SetFont('Arial','',10);
$pdf->AddPage();
$pdf>title(array('month'=>$month,'year'=>$year,'showroom'=>ucfirst($data['showroom_name'])));
$pdf->tableBody($data);
if(!empty($data["order_detail"])){
$customerOrders = array();
$stockOrders = array();
$floorstockOrders = array();
$otherOrders = array();
foreach($data["order_detail"] as $o){
switch($o["orderSource"]){
case 'Client':
$customerOrders[] = $o;
break;
case 'Stock':
$stockOrders[] = $o;
break;
case 'Floorstock':
$floorstockOrders[] = $o;
break;
default:
$otherOrders[] = $o;
break;
}
}
if (!empty($customerOrders)) {
$pdf->orderDetail($customerOrders, $data['currency'], 'Client');
}
if (!empty($stockOrders)) {
$pdf->orderDetail($stockOrders, $data['currency'], 'Stock');
}
if (!empty($floorstockOrders)) {
$pdf->orderDetail($floorstockOrders, $data['currency'], 'Floor Stock');
}
if (!empty($otherOrders)) {
$pdf->orderDetail($otherOrders, $data['currency'], 'Client');
}
}
$pdf->Output();
orderDetail
기능은 $pdf
개체 내에서 어떤 구조 테이블 인 테이블이 올바른 열 이름에 해당하는 셀이되도록 현재 시도가 null
을 반환하기 때문에 setSourceTotalsArray
을 orderDetail
으로 전달하십시오.