Bạn có thể thử KoolReport .
Tuyên bố từ chối trách nhiệm:Tôi đang làm việc trong dự án này.
Nó là một khuôn khổ báo cáo php, chính xác những gì bạn đang tìm kiếm. Bạn có thể tải xuống khuôn khổ thông qua trang web, sao chép dự án từ github
hoặc sử dụng trình soạn nhạc để cài đặt:composer require koolphp/koolreport
.
Sau khi cài đặt, đây là ví dụ cơ bản về việc tạo báo cáo bán hàng
index.php
:Đây là tệp bootstrap
<?php
require_once "SalesByCustomer.php";
$salesByCustomer = new SalesByCustomer;
$salesByCustomer->run()->render();
SaleByCustomer.php
:Tệp này xác định kết nối dữ liệu và quy trình dữ liệu
<?php
require_once "koolreport/autoload.php";
use \koolreport\processes\Group;
use \koolreport\processes\Limit;
use \koolreport\processes\Sort;
class SalesByCustomer extends \koolreport\KoolReport
{
public function settings()
{
return array(
"dataSources"=>array(
"sales"=>array(
"connectionString"=>"mysql:host=localhost;dbname=db_sales",
"username"=>"root",
"password"=>"",
"charset"=>"utf8"
)
)
);
}
public function setup()
{
$this->src('sales')
->query("SELECT customerName,dollar_sales FROM customer_product_dollarsales")
->pipe(new Group(array(
"by"=>"customerName",
"sum"=>"dollar_sales"
)))
->pipe(new Sort(array(
"dollar_sales"=>"desc"
)))
->pipe(new Limit(array(10)))
->pipe($this->dataStore('sales_by_customer'));
}
}
SalesByCustomer.view.php
:Đây là tệp chế độ xem nơi bạn có thể hiển thị dữ liệu
<?php
use \koolreport\widgets\koolphp\Table;
use \koolreport\widgets\google\BarChart;
?>
<div class="text-center">
<h1>Sales Report</h1>
<h4>This report shows top 10 sales by customer</h4>
</div>
<hr/>
<?php
BarChart::create(array(
"dataStore"=>$this->dataStore('sales_by_customer'),
"width"=>"100%",
"height"=>"500px",
"columns"=>array(
"customerName"=>array(
"label"=>"Customer"
),
"dollar_sales"=>array(
"type"=>"number",
"label"=>"Amount",
"prefix"=>"$",
)
),
"options"=>array(
"title"=>"Sales By Customer"
)
));
?>
<?php
Table::create(array(
"dataStore"=>$this->dataStore('sales_by_customer'),
"columns"=>array(
"customerName"=>array(
"label"=>"Customer"
),
"dollar_sales"=>array(
"type"=>"number",
"label"=>"Amount",
"prefix"=>"$",
)
),
"cssClass"=>array(
"table"=>"table table-hover table-bordered"
)
));
?>
Và đây là kết quả .
Về cơ bản, bạn có thể lấy dữ liệu từ nhiều nguồn dữ liệu cùng một lúc, chuyển chúng qua các quy trình sau đó lưu trữ kết quả vào kho dữ liệu. Dữ liệu trong kho dữ liệu sau đó sẽ có sẵn trong chế độ xem để có được hình ảnh hóa. Google Charts được tích hợp bên trong khuôn khổ nên bạn có thể sử dụng ngay để tạo các biểu đồ và đồ thị đẹp mắt.
Được rồi, đây là một số liên kết tốt:
- KoolReport Ví dụ nâng cao :Xem thêm một số ví dụ điển hình
- Tài liệu - Nguồn dữ liệu :Hỗ trợ MySQL, Oracle, SQLServer, MongoDB, CSV, Microsoft Excel ..
- Tài liệu - Xử lý dữ liệu :Phân tích và chuyển đổi dữ liệu
- Doc - Data Visualization :hiển thị dữ liệu của bạn bằng biểu đồ, bảng và hơn thế nữa.
- Dự án trên Github .
Hy vọng điều đó sẽ hữu ích.