![]() Server : LiteSpeed System : Linux premium84.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : claqxcrl ( 523) PHP Version : 8.1.32 Disable Function : NONE Directory : /home/claqxcrl/anfangola.com/wp-content/plugins/matomo/app/core/Updater/Migration/Db/ |
<?php /** * Matomo - free/libre analytics platform * * @link https://matomo.org * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later */ namespace Piwik\Updater\Migration\Db; use Piwik\DataAccess\TableMetadata; /** * @see Factory::addColumns() * @ignore */ class AddColumns extends \Piwik\Updater\Migration\Db\Sql { public function __construct($table, $columns, $placeColumnAfter) { $tableMetadata = new TableMetadata(); try { $existingColumns = $tableMetadata->getColumns($table); } catch (\Exception $ex) { $existingColumns = []; } $changes = array(); foreach ($columns as $columnName => $columnType) { if (in_array($columnName, $existingColumns)) { continue; } $part = sprintf("ADD COLUMN `%s` %s", $columnName, $columnType); if (!empty($placeColumnAfter)) { $part .= sprintf(' AFTER `%s`', $placeColumnAfter); $placeColumnAfter = $columnName; } $changes[] = $part; } $sql = sprintf("ALTER TABLE `%s` %s", $table, implode(', ', $changes)); parent::__construct($sql, static::ERROR_CODE_DUPLICATE_COLUMN); } }