Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Có bất kỳ khung báo cáo tương thích với PHP MySQL nào tốt không?

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:

  1. KoolReport Ví dụ nâng cao :Xem thêm một số ví dụ điển hình
  2. Tài liệu - Nguồn dữ liệu :Hỗ trợ MySQL, Oracle, SQLServer, MongoDB, CSV, Microsoft Excel ..
  3. Tài liệu - Xử lý dữ liệu :Phân tích và chuyển đổi dữ liệu
  4. 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.
  5. Dự án trên Github .

Hy vọng điều đó sẽ hữu ích.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để sử dụng trình bao thực thi với PHP và MySQL?

  2. Slick động groupby

  3. Kiểm tra hiệu suất sử dụng MySQLdump và MySQL Shell Utility

  4. Kiểm tra xem ngày hiện tại có nằm giữa hai ngày không + truy vấn chọn mysql

  5. Nhóm một bảng có thứ tự sẽ luôn trả về hàng đầu tiên? MYSQL