yii框架結合charjs實現統計30天數據的方法_php實例

來源:腳本之家  責任編輯:小易  

直接view里面一個表單把所有有可能的數據顯示出來 再用js根據用戶選擇的不同選項顯示隱藏對應的項就可以了!www.13333515.buzz防采集請勿采集本網。

本文實例講述了yii框架結合charjs實現統計30天數據的方法。分享給大家供大家參考,具體如下:

看你報的錯,應該是你的這個MYActiveRecord類文件沒有import進來,你得預先在main配置文件里把它import進來,比如MYActiveRecord文件在\myapp\models目錄下,則: 'import'=>array 'application.models.MYActiveRecord',

理論上30天數據應該都有,但實際上卻不一定是,所以需要補全

outbjyear=new Ticketoutbjyear($tableName);outbjyear->OutTime=time();result=$outbjyear->save();你數據庫只有一個必填的字段么?你把那個Scenario打印出來看看·你是在更新還是在插入·

public static function getDayOrderCharData($days = 30) { $nowDay = date('Y-m-d', strtotime('-1day')); // 當前前一天 $lastDay = date("Y-m-d", strtotime('-'.$days.'day')); // days天前 $daysFormat = []; // 獲取到days段的日期 for($i = $days; $i > 0; $i--) { $daysFormat[] = date("Y-m-d", strtotime('-'.$i.'day')); } // 所有用戶 $allOrderData = self::find() ->select(['FROM_UNIXTIME(create_at,"%Y-%m-%d") as char_time', 'COUNT(id) as total_order', 'SUM(order_amount) as total_order_amount', 'SUM(pay_amount) as total_order_pay_amount']) ->where(['>=', 'FROM_UNIXTIME(create_at,"%Y-%m-%d")', $lastDay]) ->andWhere(['<=', 'FROM_UNIXTIME(create_at,"%Y-%m-%d")', $nowDay]) ->groupBy('char_time') ->all(); $dayCountTitle = Yii::t('backend', 'day_order_count_title', ['last_day' => $lastDay, 'now_day' => $nowDay]); $dayAmountTitle = Yii::t('backend', 'day_order_amount_title', ['last_day' => $lastDay, 'now_day' => $nowDay]); $labels = $daysFormat; // 所有用戶 $orderCounts = []; // 訂單數量 $orderAmounts = []; // 訂單金額 $orderPayAmounts = []; // 支付金額 $allOrderDataArr = []; foreach($allOrderData as $allKey => $allVal) { $allOrderDataArr[$allVal->char_time]['char_time'] = $allVal->char_time; $allOrderDataArr[$allVal->char_time]['total_order'] = $allVal->total_order; $allOrderDataArr[$allVal->char_time]['total_order_amount'] = $allVal->total_order_amount; $allOrderDataArr[$allVal->char_time]['total_order_pay_amount'] = $allVal->total_order_pay_amount; } foreach($daysFormat as $key => $val) { if(array_key_exists($val, $allOrderDataArr)) { $orderCounts[] = $allOrderDataArr[$val]['total_order']; $orderAmounts[] = $allOrderDataArr[$val]['total_order_amount']; $orderPayAmounts[] = $allOrderDataArr[$val]['total_order_pay_amount']; } else { $orderCounts[] = '0'; $orderAmounts[] = '0'; $orderPayAmounts[] = '0'; } } $data = [ 'dayCountTitle' => $dayCountTitle, 'dayAmountTitle' => $dayAmountTitle, 'orderCountLabel' => Yii::t('backend', 'day_order_count_label', ['days' => $days]), 'orderAmountLabel' => Yii::t('backend', 'day_order_amount_label', ['days' => $days]), 'orderPayAmountLabel' => Yii::t('backend', 'day_order_pay_amount_label', ['days' => $days]), 'nowDay' => $nowDay, 'lastDay' => $lastDay, 'labels' => $labels, 'orderCounts' => $orderCounts, 'orderAmounts' => $orderAmounts, 'orderPayAmounts' => $orderPayAmounts ]; return $data; }

在百度輸入yii框架,如圖: 點擊百度一下,得到搜索結果,點擊第一個進入官網: 在官網可以看到有一個下載框架的按鈕,點擊進入: 進到Download頁面后,往下翻,看到有兩種可以下載,簡單版和高級版,點擊既可以下載: 下載高級版完成。那如何下載最新版呢?進到Download頁面后,往下翻,看到

js

要講原理可能要講CModel是怎么實現的,以及在Application中如何引入的。來打開代碼具體看看。其實可以放在學習了From和數據相關的Model之后來分析原理,可能理解的更深入,但是打開CModel細細分析了解一下,會對后期的相關知識的學習更快速,因為通過類的代碼注釋,我們就看到了接下來類的

// 按天獲取訂單數量 var dayOrderCountChartCanvas = $('#dayOrderCountChart').get(0).getContext('2d') var dayOrderCountChartData = { labels : <?= json_encode($dayOrderChar['labels'], true) ?>, datasets: [ { label : '<?= $dayOrderChar['orderCountLabel'] ?>', backgroundColor : 'rgba(0, 192, 293, 0.5)', data : <?= json_encode($dayOrderChar['orderCounts'], true) ?> } ] } var dayOrderCountChartOptions = { scales: { xAxes: [{ gridLines: { display: false } }], yAxes: [{ gridLines: { display: false } }] } } var dayOrderCountChart = new Chart(dayOrderCountChartCanvas, { type: 'line', data: dayOrderCountChartData, options: dayOrderCountChartOptions }); // 按天獲取訂單及金額 var dayOrderAmounCanvas = $('#dayOrderAmountChart').get(0).getContext('2d') var dayOrderAmounData = { labels : <?= json_encode($dayOrderChar['labels'], true) ?>, datasets: [ { label : '<?= $dayOrderChar['orderAmountLabel'] ?>', backgroundColor : 'rgba(0, 192, 293, 0.5)', data : <?= json_encode($dayOrderChar['orderAmounts'], true) ?> }, { label : '<?= $dayOrderChar['orderPayAmountLabel'] ?>', backgroundColor : 'rgba(0, 166, 90, 0.5)', data : <?= json_encode($dayOrderChar['orderPayAmounts'], true) ?> } ] } var dayOrderAmounOptions = { scales: { xAxes: [{ gridLines: { display: false } }], yAxes: [{ gridLines: { display: false } }] } } var dayOrderAmountChart = new Chart(dayOrderAmounCanvas, { type: 'line', data: dayOrderAmounData, options: dayOrderAmounOptions });

用ajax把選取到的數據發送到controller中,獲取到結果顯示在view上

記住,yii的as一定要在模型利定義公用變量

public $char_time; // 按時間統計 public $total_order; // 所有訂單 public $total_order_amount; // 所有訂單總額 public $total_pay_order; // 支付訂單 public $total_pay_amount; // 支付訂單總額 public $total_order_pay_amount; // 支付總額

更多關于Yii相關內容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結》、《php優秀開發框架總結》、《smarty模板入門基礎教程》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總

希望本文所述對大家基于Yii框架的PHP程序設計有所幫助。

剛開始寫YII的時候,對于頁面布局的問題相當苦惱復。最開始的問題就是:很多時候可能需要多種不同的頁面布局當在Controller使用render渲染 視圖文件的時候。制默認都是加載main.php文件。我當時針對這個問題的解決方法就是使用renderPartialrenderPartial這個函數 是直知接渲染視圖文件,而不會加載main.php所以我寫出來之后發現很多頁面都包含了相同段代碼。道內容來自www.13333515.buzz請勿采集。


  • 本文相關:
  • spring-boot結合shrio實現jwt的方法
  • java集合框架map特性及實例解析
  • tp5框架實現一次選擇多張圖片并預覽的方法示例
  • yii框架結合charjs統計上一年與當前年數據的方法示例
  • thinkphp5 框架結合plupload實現圖片批量上傳功能示例
  • tp5框架實現上傳多張圖片的方法分析
  • apache shrio安全框架實現原理及實例詳解
  • php在線生成二維碼代碼(google api)
  • php獲取網頁中圖片、div內容的簡單方法
  • laravel 查詢數據庫獲取結果實現判斷是否為空
  • apache mysql php 源碼編譯使用方法
  • codeigniter整合tank auth權限類庫詳解
  • php生成word文檔的三種實現方式
  • php操作mysql數據庫分表的方法
  • thinkphp之用戶注冊登錄留言完整實例
  • yii框架acf(accesscontroller)簡單權限控制操作示例
  • drupal7中常用的數據庫操作實例
  • 用yii框架怎樣實現簡單的頁面布局
  • 關于Yii框架,怎么實現一個動態的checklist
  • yii框架如何訪問api
  • YII框架連接多個數據庫,怎么實現使用model,不
  • YII框架連接多個數據庫,怎么實現使用model,不要原始sql...
  • PHP 中Yii框架想實現一個Model可供多個這個Model衍生出來...
  • 用YII框架怎么實現批量下載的功能啊?百度知道
  • yii2框架怎么寫model類
  • yii框架中,如何利用下拉菜單進行篩選
  • 一個能用yii框架實現折疊式的菜單欄嗎
  • 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全php基礎php技巧php實例php文摘php模板首頁php編程php實例yii框架入門及常用技巧總結php優秀開發框架總結smarty模板入門基礎教程php面向對象程序設計入門教程php字符串(string)用法總結php+mysql數據庫操作入門教程php常見數據庫操作技巧匯總spring-boot結合shrio實現jwt的方法java集合框架map特性及實例解析tp5框架實現一次選擇多張圖片并預覽的方法示例yii框架結合charjs統計上一年與當前年數據的方法示例thinkphp5 框架結合plupload實現圖片批量上傳功能示例tp5框架實現上傳多張圖片的方法分析apache shrio安全框架實現原理及實例詳解php在線生成二維碼代碼(google api)php獲取網頁中圖片、div內容的簡單方法laravel 查詢數據庫獲取結果實現判斷是否為空apache mysql php 源碼編譯使用方法codeigniter整合tank auth權限類庫詳解php生成word文檔的三種實現方式php操作mysql數據庫分表的方法thinkphp之用戶注冊登錄留言完整實例yii框架acf(accesscontroller)簡單權限控制操作示例drupal7中常用的數據庫操作實例php獲取數組長度的方法(有實例)微信公眾平臺實現獲取用戶openid教你如何使用php session使用php生成二維碼的兩種方法(帶php發送get、post請求的6種方法簡php中把stdclass object轉array的微信公眾平臺網頁授權獲取用戶基laravel框架數據庫curd操作、連貫php刪除數組中空值的方法介紹php字符串的連接的簡單實例thinkphp模板自定義標簽使用方法又一個php實現的冒泡排序算法分享windows下php+mysql5.7配置教程destoon二次開發常用數據庫操作php中的curl使用入門教程和常見用法實例php常用處理靜態操作類作為php程序員應該了解mongodb的五件事深入php內核之php in array基于php異步執行的常用方式詳解php搭建大文件切割分塊上傳功能示例
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.13333515.buzz All Rights Reserved
    3排列五开奖结果