当前位置: 首页>>代码示例>>PHP>>正文


PHP DataTable::addSummaryRow方法代码示例

本文整理汇总了PHP中Piwik\DataTable::addSummaryRow方法的典型用法代码示例。如果您正苦于以下问题:PHP DataTable::addSummaryRow方法的具体用法?PHP DataTable::addSummaryRow怎么用?PHP DataTable::addSummaryRow使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Piwik\DataTable的用法示例。


在下文中一共展示了DataTable::addSummaryRow方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: test_filter_shouldIgnoreSummaryRow

 public function test_filter_shouldIgnoreSummaryRow()
 {
     $row = $this->buildRow(array('label' => 'other'));
     $this->table->addSummaryRow($row);
     $this->table->filter($this->filter, array('UTC', 'day', 'today'));
     $this->assertFalse($row->getMetadata('segmentValue'));
 }
开发者ID:FluentDevelopment,项目名称:piwik,代码行数:7,代码来源:AddSegmentByLabelInUTCTest.php

示例2: test_filter_ShouldIgnoreSummaryRow

 public function test_filter_ShouldIgnoreSummaryRow()
 {
     $summaryRow = $this->buildRow(array('label' => 'my test'));
     $this->table->addSummaryRow($summaryRow);
     $this->table->filter($this->filter);
     $this->assertFalse($summaryRow->getMetadata('segmentValue'));
 }
开发者ID:mgou-net,项目名称:piwik,代码行数:7,代码来源:AddSegmentValueTest.php

示例3: test_filter_IfMultipleSegmentsAreGiven_ShouldIgnoreASummaryRow

 public function test_filter_IfMultipleSegmentsAreGiven_ShouldIgnoreASummaryRow()
 {
     $summaryRow = $this->buildRow(array('label' => 'part1 part2'));
     $this->table->addSummaryRow($summaryRow);
     $this->table->filter($this->filter, array(array('seg1', 'seg2'), $delimiter = ' '));
     $this->assertFalse($summaryRow->getMetadata('segment'));
 }
开发者ID:FluentDevelopment,项目名称:piwik,代码行数:7,代码来源:AddSegmentFilterTest.php

示例4: filter

 /**
  * See {@link Limit}.
  *
  * @param DataTable $table
  */
 public function filter($table)
 {
     $table->setMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME, $table->getRowsCount());
     if ($this->keepSummaryRow) {
         $summaryRow = $table->getRowFromId(DataTable::ID_SUMMARY_ROW);
     }
     // we delete from 0 to offset
     if ($this->offset > 0) {
         $table->deleteRowsOffset(0, $this->offset);
     }
     // at this point the array has offset less elements. We delete from limit to the end
     if ($this->limit >= 0) {
         $table->deleteRowsOffset($this->limit);
     }
     if ($this->keepSummaryRow && !empty($summaryRow)) {
         $table->addSummaryRow($summaryRow);
     }
 }
开发者ID:KiwiJuicer,项目名称:handball-dachau,代码行数:23,代码来源:Limit.php

示例5: filter

 /**
  * Executes the filter. See {@link AddSummaryRow}.
  *
  * @param DataTable $table
  */
 public function filter($table)
 {
     $row = new DataTableSummaryRow($table);
     $row->setColumn('label', $this->labelSummaryRow);
     $table->addSummaryRow($row);
 }
开发者ID:KiwiJuicer,项目名称:handball-dachau,代码行数:11,代码来源:AddSummaryRow.php

示例6: mergeSubtables

 /**
  * Returns a new DataTable in which the rows of this table are replaced with the aggregatated rows of all its subtables.
  *
  * @param string|bool $labelColumn If supplied the label of the parent row will be added to
  *                                 a new column in each subtable row.
  *
  *                                 If set to, `'label'` each subtable row's label will be prepended
  *                                 w/ the parent row's label. So `'child_label'` becomes
  *                                 `'parent_label - child_label'`.
  * @param bool $useMetadataColumn If true and if `$labelColumn` is supplied, the parent row's
  *                                label will be added as metadata and not a new column.
  * @return \Piwik\DataTable
  */
 public function mergeSubtables($labelColumn = false, $useMetadataColumn = false)
 {
     $result = new DataTable();
     $result->setAllTableMetadata($this->getAllTableMetadata());
     foreach ($this->getRowsWithoutSummaryRow() as $row) {
         $subtable = $row->getSubtable();
         if ($subtable !== false) {
             $parentLabel = $row->getColumn('label');
             // add a copy of each subtable row to the new datatable
             foreach ($subtable->getRows() as $id => $subRow) {
                 $copy = clone $subRow;
                 // if the summary row, add it to the existing summary row (or add a new one)
                 if ($id == self::ID_SUMMARY_ROW) {
                     $existing = $result->getRowFromId(self::ID_SUMMARY_ROW);
                     if ($existing === false) {
                         $result->addSummaryRow($copy);
                     } else {
                         $existing->sumRow($copy, $copyMeta = true, $this->getMetadata(self::COLUMN_AGGREGATION_OPS_METADATA_NAME));
                     }
                 } else {
                     if ($labelColumn !== false) {
                         // if we're modifying the subtable's rows' label column, then we make
                         // sure to prepend the existing label w/ the parent row's label. otherwise
                         // we're just adding the parent row's label as a new column/metadata.
                         $newLabel = $parentLabel;
                         if ($labelColumn == 'label') {
                             $newLabel .= ' - ' . $copy->getColumn('label');
                         }
                         // modify the child row's label or add new column/metadata
                         if ($useMetadataColumn) {
                             $copy->setMetadata($labelColumn, $newLabel);
                         } else {
                             $copy->setColumn($labelColumn, $newLabel);
                         }
                     }
                     $result->addRow($copy);
                 }
             }
         }
     }
     return $result;
 }
开发者ID:piwik,项目名称:piwik,代码行数:55,代码来源:DataTable.php

示例7: addSummaryRow

 /**
  * @param DataTable $table
  */
 private function addSummaryRow($table)
 {
     if ($table->getRowsCount() <= $this->truncateAfter + 1) {
         return;
     }
     $table->filter('Sort', array($this->columnToSortByBeforeTruncating, 'desc', $naturalSort = true, $recursiveSort = false));
     $rows = array_values($table->getRows());
     $count = $table->getRowsCount();
     $newRow = new Row(array(Row::COLUMNS => array('label' => DataTable::LABEL_SUMMARY_ROW)));
     $aggregationOps = $table->getMetadata(DataTable::COLUMN_AGGREGATION_OPS_METADATA_NAME);
     for ($i = $this->truncateAfter; $i < $count; $i++) {
         if (!isset($rows[$i])) {
             // case when the last row is a summary row, it is not indexed by $cout but by DataTable::ID_SUMMARY_ROW
             $summaryRow = $table->getRowFromId(DataTable::ID_SUMMARY_ROW);
             //FIXME: I'm not sure why it could return false, but it was reported in: http://forum.piwik.org/read.php?2,89324,page=1#msg-89442
             if ($summaryRow) {
                 $newRow->sumRow($summaryRow, $enableCopyMetadata = false, $aggregationOps);
             }
         } else {
             $newRow->sumRow($rows[$i], $enableCopyMetadata = false, $aggregationOps);
         }
     }
     $table->filter('Limit', array(0, $this->truncateAfter));
     $table->addSummaryRow($newRow);
     unset($rows);
 }
开发者ID:FluentDevelopment,项目名称:piwik,代码行数:29,代码来源:Truncate.php


注:本文中的Piwik\DataTable::addSummaryRow方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。