sql >> データベース >  >> RDS >> Mysql

PHP MySQL互換の優れたレポートフレームワークはありますか?

    KoolReport をお試しください 。

    免責事項:私はこのプロジェクトに取り組んでいます。

    これは、まさにあなたが探しているphpレポートフレームワークです。フレームワークはウェブサイトからダウンロードでき、プロジェクトをgithubから複製 できます。 または、composerを使用してインストールします:composer require koolphp/koolreport

    インストール後、販売レポートを作成する基本的な例を次に示します

    index.php :これはブートストラップファイルです

    <?php
    require_once "SalesByCustomer.php";
    $salesByCustomer = new SalesByCustomer;
    $salesByCustomer->run()->render();                  
    

    SaleByCustomer.php :このファイルは、データ接続とデータプロセスを定義します

    <?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 :これは、データを視覚化できるビューファイルです

    <?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"
        )
    ));
    ?>
    

    そして、これが結果

    基本的に、同時に多くのデータソースからデータを取得し、それらをプロセスにパイプして、結果をデータストアに保存することができます。データストア内のデータは、視覚化するためにビューで利用できるようになります。 Googleチャート フレームワーク内に統合されているため、すぐに使用して美しいチャートやグラフを作成できます。

    了解しました。ここにいくつかの良いリンクがあります:

    1. KoolReport高度な例 :もっと良い例を見る
    2. Doc-データソース :MySQL、Oracle、SQLServer、MongoDB、CSV、MicrosoftExcelをサポート..
    3. ドキュメント-データ処理 :データ分析と変換
    4. Doc-データの視覚化 :グラフや表などでデータを視覚化できます。
    5. Githubのプロジェクト

    お役に立てば幸いです。



    1. Sonar MySQLデータベースにアクセスできません原因:java.sql.SQLException:ユーザー'sonar' @'glassfishdev.ccs.local'のアクセスが拒否されました(パスワードを使用:YES)

    2. eclipselink jpaは、COUNT(*)の代わりにCOUNT(id)を使用してカウントクエリを生成します

    3. 価格のフロートまたは小数?

    4. DataGripを使用してSSH経由でデータベースに接続する方法