diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index f6fce63786..8c5b89b634 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -12249,12 +12249,6 @@ parameters: count: 1 path: src/Plugins/Export/ExportSql.php - - - message: '#^Binary operation "\." between non\-falsy\-string and mixed results in an error\.$#' - identifier: binaryOp.invalid - count: 1 - path: src/Plugins/Export/ExportSql.php - - message: ''' #^Call to deprecated method getInstance\(\) of class PhpMyAdmin\\Config\: @@ -12279,12 +12273,6 @@ parameters: count: 2 path: src/Plugins/Export/ExportSql.php - - - message: '#^Cannot access offset ''Type'' on mixed\.$#' - identifier: offsetAccess.nonOffsetAccessible - count: 1 - path: src/Plugins/Export/ExportSql.php - - message: '#^Cannot access offset ''alias'' on mixed\.$#' identifier: offsetAccess.nonOffsetAccessible @@ -12306,7 +12294,7 @@ parameters: - message: '#^Cannot access offset \(int\|string\) on mixed\.$#' identifier: offsetAccess.nonOffsetAccessible - count: 2 + count: 1 path: src/Plugins/Export/ExportSql.php - @@ -12318,7 +12306,7 @@ parameters: - message: '#^Cannot access offset string on mixed\.$#' identifier: offsetAccess.nonOffsetAccessible - count: 10 + count: 11 path: src/Plugins/Export/ExportSql.php - diff --git a/psalm-baseline.xml b/psalm-baseline.xml index e1bc6edd02..588da6bd87 100644 --- a/psalm-baseline.xml +++ b/psalm-baseline.xml @@ -4284,6 +4284,9 @@ + + + @@ -7097,7 +7100,6 @@ - @@ -7107,7 +7109,6 @@ - name]]> references->table->table]]> @@ -7118,9 +7119,6 @@ name->table]]> table->table]]> - - - key->columns]]> references->columns]]> diff --git a/src/Plugins/Export/ExportSql.php b/src/Plugins/Export/ExportSql.php index 6ab710aafa..d9ddacdd6d 100644 --- a/src/Plugins/Export/ExportSql.php +++ b/src/Plugins/Export/ExportSql.php @@ -1260,14 +1260,14 @@ class ExportSql extends ExportPlugin $createQuery .= Util::backquote($viewAlias) . ' (' . "\n"; $tmp = []; - $columns = DatabaseInterface::getInstance()->getColumnsFull($db, $view); - foreach ($columns as $columnName => $definition) { - $colAlias = $columnName; + $columns = DatabaseInterface::getInstance()->getColumns($db, $view); + foreach ($columns as $column) { + $colAlias = $column->field; if (! empty($aliases[$db]['tables'][$view]['columns'][$colAlias])) { $colAlias = $aliases[$db]['tables'][$view]['columns'][$colAlias]; } - $tmp[] = Util::backquote($colAlias) . ' ' . $definition['Type'] . "\n"; + $tmp[] = Util::backquote($colAlias) . ' ' . $column->type . "\n"; } return $createQuery . implode(',', $tmp) . ');' . "\n"; diff --git a/tests/unit/Plugins/Export/ExportSqlTest.php b/tests/unit/Plugins/Export/ExportSqlTest.php index 96c45c4fd1..fd590d64ba 100644 --- a/tests/unit/Plugins/Export/ExportSqlTest.php +++ b/tests/unit/Plugins/Export/ExportSqlTest.php @@ -4,6 +4,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Tests\Plugins\Export; +use PhpMyAdmin\Column; use PhpMyAdmin\ColumnFull; use PhpMyAdmin\Config; use PhpMyAdmin\ConfigStorage\Relation; @@ -650,9 +651,9 @@ class ExportSqlTest extends AbstractTestCase ->getMock(); $dbi->expects(self::once()) - ->method('getColumnsFull') + ->method('getColumns') ->with('db', 'view') - ->willReturn(['cname' => ['Type' => 'int']]); + ->willReturn([new Column('cname', 'int', false, '', null, '')]); DatabaseInterface::$instance = $dbi;