PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / trunk
Matomo Analytics – Powerful, Privacy-First Insights for WordPress vtrunk
5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / core / DataAccess / TableMetadata.php
matomo / app / core / DataAccess Last commit date
LogQueryBuilder 3 months ago Actions.php 6 months ago ArchiveSelector.php 1 month ago ArchiveTableCreator.php 1 month ago ArchiveTableDao.php 1 month ago ArchiveWriter.php 1 month ago ArchivingDbAdapter.php 1 year ago LogAggregator.php 1 month ago LogQueryBuilder.php 6 months ago LogTableTemporary.php 2 years ago Model.php 1 month ago RawLogDao.php 6 months ago TableMetadata.php 1 year ago
TableMetadata.php
51 lines
1 <?php
2
3 /**
4 * Matomo - free/libre analytics platform
5 *
6 * @link https://matomo.org
7 * @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
8 */
9 namespace Piwik\DataAccess;
10
11 use Piwik\Db;
12 /**
13 * Data Access Object that can be used to get metadata information about
14 * the MySQL tables Piwik uses.
15 */
16 class TableMetadata
17 {
18 /**
19 * Returns the list of column names for a table.
20 *
21 * @param string $table Prefixed table name.
22 * @return string[] List of column names..
23 */
24 public function getColumns($table)
25 {
26 $table = str_replace("`", "", $table);
27 $columns = Db::fetchAll("SHOW COLUMNS FROM `" . $table . "`");
28 $columnNames = array();
29 foreach ($columns as $column) {
30 $columnNames[] = $column['Field'];
31 }
32 return $columnNames;
33 }
34 /**
35 * Returns the list of idaction columns in a table. A column is
36 * assumed to be an idaction reference if it has `"idaction"` in its
37 * name (eg, `"idaction_url"` or `"idaction_content_name"`.
38 *
39 * @param string $table Prefixed table name.
40 * @return string[]
41 */
42 public function getIdActionColumnNames($table)
43 {
44 $columns = $this->getColumns($table);
45 $columns = array_filter($columns, function ($columnName) {
46 return strpos($columnName, 'idaction') !== \false;
47 });
48 return array_values($columns);
49 }
50 }
51