本文整理汇总了PHP中Piwik\DataTable::getRowFromLabel方法的典型用法代码示例。如果您正苦于以下问题:PHP DataTable::getRowFromLabel方法的具体用法?PHP DataTable::getRowFromLabel怎么用?PHP DataTable::getRowFromLabel使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Piwik\DataTable
的用法示例。
在下文中一共展示了DataTable::getRowFromLabel方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: doFilterRecursiveDescend
/**
* Method for the recursive descend
*
* @param array $labelParts
* @param DataTable $dataTable
* @return Row|bool
*/
private function doFilterRecursiveDescend($labelParts, $dataTable)
{
// search for the first part of the tree search
$labelPart = array_shift($labelParts);
$row = false;
foreach ($this->getLabelVariations($labelPart) as $labelPart) {
$row = $dataTable->getRowFromLabel($labelPart);
if ($row !== false) {
break;
}
}
if ($row === false) {
// not found
return false;
}
// end of tree search reached
if (count($labelParts) == 0) {
return $row;
}
$subTable = $this->loadSubtable($dataTable, $row);
if ($subTable === null) {
// no more subtables but label parts left => no match found
return false;
}
return $this->doFilterRecursiveDescend($labelParts, $subTable);
}
示例2: doFilterRecursiveDescend
/**
* Method for the recursive descend
*
* @param array $labelParts
* @param DataTable $dataTable
* @return Row|bool
*/
private function doFilterRecursiveDescend($labelParts, $dataTable)
{
// we need to make sure to rebuild the index as some filters change the label column directly via
// $row->setColumn('label', '') which would not be noticed in the label index otherwise.
$dataTable->rebuildIndex();
// search for the first part of the tree search
$labelPart = array_shift($labelParts);
$row = false;
foreach ($this->getLabelVariations($labelPart) as $labelPart) {
$row = $dataTable->getRowFromLabel($labelPart);
if ($row !== false) {
break;
}
}
if ($row === false) {
// not found
return false;
}
// end of tree search reached
if (count($labelParts) == 0) {
return $row;
}
$subTable = $this->loadSubtable($dataTable, $row);
if ($subTable === null) {
// no more subtables but label parts left => no match found
return false;
}
return $this->doFilterRecursiveDescend($labelParts, $subTable);
}
示例3: filter
/**
* @param DataTable $table
*/
public function filter($table)
{
$row = $table->getRowFromLabel(Archiver::EVENT_NAME_NOT_SET);
if ($row) {
$row->setColumn('label', Piwik::translate('General_NotDefined', Piwik::translate('Events_EventName')));
}
}
示例4: filter
/**
* See {@link ReplaceSummaryRowLabel}.
*
* @param DataTable $table
*/
public function filter($table)
{
$row = $table->getRowFromId(DataTable::ID_SUMMARY_ROW);
if ($row) {
$row->setColumn('label', $this->newLabel);
} else {
$row = $table->getRowFromLabel(DataTable::LABEL_SUMMARY_ROW);
if ($row) {
$row->setColumn('label', $this->newLabel);
}
}
// recurse
foreach ($table->getRowsWithoutSummaryRow() as $row) {
$subTable = $row->getSubtable();
if ($subTable) {
$this->filter($subTable);
}
}
}
示例5: isEqual
/**
* Returns true if both DataTable instances are exactly the same.
*
* DataTables are equal if they have the same number of rows, if
* each row has a label that exists in the other table, and if each row
* is equal to the row in the other table with the same label. The order
* of rows is not important.
*
* @param \Piwik\DataTable $table1
* @param \Piwik\DataTable $table2
* @return bool
*/
public static function isEqual(DataTable $table1, DataTable $table2)
{
$table1->rebuildIndex();
$table2->rebuildIndex();
if ($table1->getRowsCount() != $table2->getRowsCount()) {
return false;
}
$rows1 = $table1->getRows();
foreach ($rows1 as $row1) {
$row2 = $table2->getRowFromLabel($row1->getColumn('label'));
if ($row2 === false || !Row::isEqual($row1, $row2)) {
return false;
}
}
return true;
}
示例6: getPastRowFromCurrent
/**
* Utility function. Returns the current row in the past DataTable.
*
* @param Row $row The row in the 'current' DataTable.
* @return bool|Row
*/
protected function getPastRowFromCurrent($row)
{
return $this->pastDataTable->getRowFromLabel($row->getColumn('label'));
}
示例7: getRowFromTable
private function getRowFromTable(DataTable $table, DataTable\Row $row)
{
return $table->getRowFromLabel($row->getColumn('label'));
}
示例8: setGroupForSiteId
private function setGroupForSiteId(DataTable $table, $siteId, $groupName)
{
$table->getRowFromLabel('Site' . $siteId)->setMetadata('group', $groupName);
}
示例9: getPastRowFromCurrent
/**
* public for Insights use.
*/
public function getPastRowFromCurrent(Row $row)
{
return $this->pastData->getRowFromLabel($row->getColumn('label'));
}
示例10: assertMoversAndShakers
private function assertMoversAndShakers(DataTable $report, $movers, $nonMovers)
{
foreach ($movers as $mover) {
$row = $report->getRowFromLabel($mover);
if (!$row) {
$this->fail("{$mover} is not a valid label");
continue;
}
$this->assertTrue($row->getColumn('isMoverAndShaker'), "{$mover} is not a mover but should be");
}
foreach ($nonMovers as $nonMover) {
$row = $report->getRowFromLabel($nonMover);
if (!$row) {
$this->fail("{$nonMover} is not a valid label");
continue;
}
$this->assertFalse($row->getColumn('isMoverAndShaker'), "{$nonMover} is a mover but should be not");
}
}