diff --git a/libraries/classes/Charsets.php b/libraries/classes/Charsets.php index 01c3bb96e1..bc8b7656df 100644 --- a/libraries/classes/Charsets.php +++ b/libraries/classes/Charsets.php @@ -12,7 +12,6 @@ use PhpMyAdmin\Charsets\Collation; use function __; use function array_keys; -use function count; use function explode; use function is_string; use function ksort; @@ -74,7 +73,7 @@ class Charsets private static function loadCharsets(DatabaseInterface $dbi, bool $disableIs): void { /* Data already loaded */ - if (count(self::$charsets) > 0) { + if (self::$charsets !== []) { return; } @@ -106,7 +105,7 @@ class Charsets private static function loadCollations(DatabaseInterface $dbi, bool $disableIs): void { /* Data already loaded */ - if (count(self::$collations) > 0) { + if (self::$collations !== []) { return; } diff --git a/libraries/classes/Charsets/Collation.php b/libraries/classes/Charsets/Collation.php index 65b0ceaadd..e0e7c775dd 100644 --- a/libraries/classes/Charsets/Collation.php +++ b/libraries/classes/Charsets/Collation.php @@ -9,7 +9,6 @@ namespace PhpMyAdmin\Charsets; use function __; use function _pgettext; -use function count; use function explode; use function implode; @@ -238,7 +237,7 @@ final class Collation $result .= ' (' . $variant . ')'; } - if (count($suffixes) > 0) { + if ($suffixes !== []) { $result .= ', ' . implode(', ', $suffixes); } diff --git a/libraries/classes/Config/FormDisplay.php b/libraries/classes/Config/FormDisplay.php index b8b6e2a14c..faef22d676 100644 --- a/libraries/classes/Config/FormDisplay.php +++ b/libraries/classes/Config/FormDisplay.php @@ -23,7 +23,6 @@ use function __; use function array_flip; use function array_keys; use function array_search; -use function count; use function explode; use function function_exists; use function gettype; @@ -155,7 +154,7 @@ class FormDisplay } // save forms - if (count($this->forms) > 0) { + if ($this->forms !== []) { return $this->save(array_keys($this->forms), $allowPartialSave); } @@ -187,7 +186,7 @@ class FormDisplay $errors = Validator::validate($this->configFile, $paths, $values, false); // change error keys from canonical paths to work paths - if (is_array($errors) && count($errors) > 0) { + if (is_array($errors) && $errors !== []) { $this->errors = []; foreach ($errors as $path => $errorList) { $workPath = array_search($path, $this->systemPaths); diff --git a/libraries/classes/Config/Settings.php b/libraries/classes/Config/Settings.php index aaf951e9c7..9772a479eb 100644 --- a/libraries/classes/Config/Settings.php +++ b/libraries/classes/Config/Settings.php @@ -15,7 +15,6 @@ use PhpMyAdmin\Config\Settings\Transformations; use function __; use function array_map; -use function count; use function defined; use function in_array; use function is_array; @@ -3548,7 +3547,7 @@ final class Settings return (string) $settings['NavigationTreeTableSeparator']; } - if (count($settings['NavigationTreeTableSeparator']) > 0) { + if ($settings['NavigationTreeTableSeparator'] !== []) { $navigationTreeTableSeparator = []; /** @var mixed $separator */ foreach ($settings['NavigationTreeTableSeparator'] as $separator) { diff --git a/libraries/classes/Config/Settings/Server.php b/libraries/classes/Config/Settings/Server.php index ed8305bc23..aeeae6a935 100644 --- a/libraries/classes/Config/Settings/Server.php +++ b/libraries/classes/Config/Settings/Server.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace PhpMyAdmin\Config\Settings; -use function count; use function in_array; use function is_array; @@ -1382,7 +1381,7 @@ final class Server if (isset($server['only_db'])) { if (! is_array($server['only_db'])) { $onlyDb = (string) $server['only_db']; - } elseif (count($server['only_db']) > 0) { + } elseif ($server['only_db'] !== []) { $onlyDb = []; /** @var mixed $database */ foreach ($server['only_db'] as $database) { diff --git a/libraries/classes/ConfigStorage/Relation.php b/libraries/classes/ConfigStorage/Relation.php index 253d56ed85..521d749d61 100644 --- a/libraries/classes/ConfigStorage/Relation.php +++ b/libraries/classes/ConfigStorage/Relation.php @@ -1669,7 +1669,7 @@ class Relation // an array $resRel = $this->getForeigners($db, $table); - $haveRel = count($resRel) > 0; + $haveRel = $resRel !== []; } return [$resRel, $haveRel]; diff --git a/libraries/classes/Controllers/Database/ExportController.php b/libraries/classes/Controllers/Database/ExportController.php index 03924546d4..d5f6548623 100644 --- a/libraries/classes/Controllers/Database/ExportController.php +++ b/libraries/classes/Controllers/Database/ExportController.php @@ -125,7 +125,7 @@ final class ExportController extends AbstractController $exportList = Plugins::getExport($exportType, isset($GLOBALS['single_table'])); - if (empty($exportList)) { + if ($exportList === []) { $this->response->addHTML(Message::error( __('Could not load export plugins, please check your installation!'), )->getDisplay()); diff --git a/libraries/classes/Controllers/Database/ImportController.php b/libraries/classes/Controllers/Database/ImportController.php index 20e37ba1f6..0917093112 100644 --- a/libraries/classes/Controllers/Database/ImportController.php +++ b/libraries/classes/Controllers/Database/ImportController.php @@ -55,7 +55,7 @@ final class ImportController extends AbstractController $importList = Plugins::getImport('database'); - if (empty($importList)) { + if ($importList === []) { $this->response->addHTML(Message::error(__( 'Could not load import plugins, please check your installation!', ))->getDisplay()); diff --git a/libraries/classes/Controllers/Database/Structure/DropFormController.php b/libraries/classes/Controllers/Database/Structure/DropFormController.php index fd4ce8f28e..8f968d018e 100644 --- a/libraries/classes/Controllers/Database/Structure/DropFormController.php +++ b/libraries/classes/Controllers/Database/Structure/DropFormController.php @@ -41,7 +41,7 @@ final class DropFormController extends AbstractController foreach ($selected as $selectedValue) { $current = $selectedValue; - if (! empty($views) && in_array($current, $views)) { + if ($views !== [] && in_array($current, $views)) { $fullQueryViews .= (empty($fullQueryViews) ? 'DROP VIEW ' : ', ') . Util::backquote(htmlspecialchars($current)); } else { diff --git a/libraries/classes/Controllers/Database/Structure/DropTableController.php b/libraries/classes/Controllers/Database/Structure/DropTableController.php index ed365788d2..6f09bceff1 100644 --- a/libraries/classes/Controllers/Database/Structure/DropTableController.php +++ b/libraries/classes/Controllers/Database/Structure/DropTableController.php @@ -58,7 +58,7 @@ final class DropTableController extends AbstractController $this->relationCleanup->table($GLOBALS['db'], $selected[$i]); $current = $selected[$i]; - if (! empty($views) && in_array($current, $views)) { + if ($views !== [] && in_array($current, $views)) { $sqlQueryViews .= (empty($sqlQueryViews) ? 'DROP VIEW ' : ', ') . Util::backquote($current); } else { $GLOBALS['sql_query'] .= (empty($GLOBALS['sql_query']) ? 'DROP TABLE ' : ', ') diff --git a/libraries/classes/Controllers/Database/Structure/FavoriteTableController.php b/libraries/classes/Controllers/Database/Structure/FavoriteTableController.php index db37a38223..025ca2baf4 100644 --- a/libraries/classes/Controllers/Database/Structure/FavoriteTableController.php +++ b/libraries/classes/Controllers/Database/Structure/FavoriteTableController.php @@ -145,7 +145,7 @@ final class FavoriteTableController extends AbstractController ): array { $favoriteInstanceTables = $favoriteInstance->getTables(); - if (empty($favoriteInstanceTables) && isset($favoriteTables[$user])) { + if ($favoriteInstanceTables === [] && isset($favoriteTables[$user])) { foreach ($favoriteTables[$user] as $value) { $favoriteInstance->add($value['db'], $value['table']); } diff --git a/libraries/classes/Controllers/ErrorReportController.php b/libraries/classes/Controllers/ErrorReportController.php index 608d2542e5..0de2be5a55 100644 --- a/libraries/classes/Controllers/ErrorReportController.php +++ b/libraries/classes/Controllers/ErrorReportController.php @@ -17,7 +17,6 @@ use PhpMyAdmin\Template; use PhpMyAdmin\UserPreferences; use function __; -use function count; use function in_array; use function is_string; use function json_decode; @@ -77,7 +76,7 @@ class ErrorReportController extends AbstractController $reportData = $this->errorReport->getData($exceptionType); // report if and only if there were 'actual' errors. - if (count($reportData) > 0) { + if ($reportData !== []) { $serverResponse = $this->errorReport->send($reportData); if (! is_string($serverResponse)) { $success = false; diff --git a/libraries/classes/Controllers/Server/ExportController.php b/libraries/classes/Controllers/Server/ExportController.php index 287d36e3a1..b311c458b3 100644 --- a/libraries/classes/Controllers/Server/ExportController.php +++ b/libraries/classes/Controllers/Server/ExportController.php @@ -65,7 +65,7 @@ final class ExportController extends AbstractController $exportList = Plugins::getExport('server', isset($GLOBALS['single_table'])); - if (empty($exportList)) { + if ($exportList === []) { $this->response->addHTML(Message::error( __('Could not load export plugins, please check your installation!'), )->getDisplay()); diff --git a/libraries/classes/Controllers/Server/ImportController.php b/libraries/classes/Controllers/Server/ImportController.php index 04c2aa93ca..ff538581e5 100644 --- a/libraries/classes/Controllers/Server/ImportController.php +++ b/libraries/classes/Controllers/Server/ImportController.php @@ -51,7 +51,7 @@ final class ImportController extends AbstractController $importList = Plugins::getImport('server'); - if (empty($importList)) { + if ($importList === []) { $this->response->addHTML(Message::error(__( 'Could not load import plugins, please check your installation!', ))->getDisplay()); diff --git a/libraries/classes/Controllers/Table/ExportController.php b/libraries/classes/Controllers/Table/ExportController.php index 4024f1ce6e..b979c36ecd 100644 --- a/libraries/classes/Controllers/Table/ExportController.php +++ b/libraries/classes/Controllers/Table/ExportController.php @@ -96,7 +96,7 @@ class ExportController extends AbstractController $exportList = Plugins::getExport('table', isset($GLOBALS['single_table'])); - if (empty($exportList)) { + if ($exportList === []) { $this->response->addHTML(Message::error( __('Could not load export plugins, please check your installation!'), )->getDisplay()); diff --git a/libraries/classes/Controllers/Table/FindReplaceController.php b/libraries/classes/Controllers/Table/FindReplaceController.php index ca088f6b93..9e639cbba8 100644 --- a/libraries/classes/Controllers/Table/FindReplaceController.php +++ b/libraries/classes/Controllers/Table/FindReplaceController.php @@ -16,7 +16,6 @@ use PhpMyAdmin\Util; use function __; use function array_key_exists; -use function count; use function is_array; use function mb_strtolower; use function preg_match; @@ -298,7 +297,7 @@ class FindReplaceController extends AbstractController . ' SET ' . Util::backquote($column); if (is_array($toReplace)) { - if (count($toReplace) > 0) { + if ($toReplace !== []) { $sqlQuery .= ' = CASE'; foreach ($toReplace as $row) { $sqlQuery .= "\n WHEN " . Util::backquote($column) diff --git a/libraries/classes/Controllers/Table/ImportController.php b/libraries/classes/Controllers/Table/ImportController.php index 9d8e04d73e..60a5552aea 100644 --- a/libraries/classes/Controllers/Table/ImportController.php +++ b/libraries/classes/Controllers/Table/ImportController.php @@ -62,7 +62,7 @@ final class ImportController extends AbstractController $importList = Plugins::getImport('table'); - if (empty($importList)) { + if ($importList === []) { $this->response->addHTML(Message::error(__( 'Could not load import plugins, please check your installation!', ))->getDisplay()); diff --git a/libraries/classes/Controllers/Table/OperationsController.php b/libraries/classes/Controllers/Table/OperationsController.php index 1676ae9fcb..29007f4662 100644 --- a/libraries/classes/Controllers/Table/OperationsController.php +++ b/libraries/classes/Controllers/Table/OperationsController.php @@ -245,7 +245,7 @@ class OperationsController extends AbstractController $GLOBALS['tbl_collation'], ); - if (count($GLOBALS['table_alters']) > 0) { + if ($GLOBALS['table_alters'] !== []) { $GLOBALS['sql_query'] = 'ALTER TABLE ' . Util::backquote($GLOBALS['table']); $GLOBALS['sql_query'] .= "\r\n" . implode("\r\n", $GLOBALS['table_alters']); diff --git a/libraries/classes/Controllers/Table/Structure/MoveColumnsController.php b/libraries/classes/Controllers/Table/Structure/MoveColumnsController.php index 5494be2b65..8e6dc3c998 100644 --- a/libraries/classes/Controllers/Table/Structure/MoveColumnsController.php +++ b/libraries/classes/Controllers/Table/Structure/MoveColumnsController.php @@ -132,7 +132,7 @@ final class MoveColumnsController extends AbstractController array_splice($columnNames, $i, 0, $column); } - if (empty($changes) && ! isset($_REQUEST['preview_sql'])) { // should never happen + if ($changes === [] && ! isset($_REQUEST['preview_sql'])) { // should never happen $this->response->setRequestStatus(false); return; diff --git a/libraries/classes/Controllers/Table/Structure/ReservedWordCheckController.php b/libraries/classes/Controllers/Table/Structure/ReservedWordCheckController.php index ae34056c9e..a3bc0f8f4c 100644 --- a/libraries/classes/Controllers/Table/Structure/ReservedWordCheckController.php +++ b/libraries/classes/Controllers/Table/Structure/ReservedWordCheckController.php @@ -38,7 +38,7 @@ final class ReservedWordCheckController extends AbstractController $reservedKeywordsNames[] = trim($GLOBALS['table']); } - if (count($reservedKeywordsNames) === 0) { + if ($reservedKeywordsNames === []) { $this->response->setRequestStatus(false); } diff --git a/libraries/classes/Controllers/Table/Structure/SaveController.php b/libraries/classes/Controllers/Table/Structure/SaveController.php index a15327e192..c5651e0f2b 100644 --- a/libraries/classes/Controllers/Table/Structure/SaveController.php +++ b/libraries/classes/Controllers/Table/Structure/SaveController.php @@ -113,7 +113,7 @@ final class SaveController extends AbstractController $adjustPrivileges[$_POST['field_orig'][$i]] = $_POST['field_name'][$i]; } - if (count($changes) > 0 || isset($_POST['preview_sql'])) { + if ($changes !== [] || isset($_POST['preview_sql'])) { // Builds the primary keys statements and updates the table $keyQuery = ''; /** @@ -145,7 +145,7 @@ final class SaveController extends AbstractController // If there is a request for SQL previewing. if (isset($_POST['preview_sql'])) { - Core::previewSQL(count($changes) > 0 ? $sqlQuery : ''); + Core::previewSQL($changes !== [] ? $sqlQuery : ''); exit; } diff --git a/libraries/classes/Database/CentralColumns.php b/libraries/classes/Database/CentralColumns.php index f605f8d90e..8f53e0a89e 100644 --- a/libraries/classes/Database/CentralColumns.php +++ b/libraries/classes/Database/CentralColumns.php @@ -323,7 +323,7 @@ class CentralColumns } } - if (! empty($existingCols)) { + if ($existingCols !== []) { $existingCols = implode(',', array_unique($existingCols)); $message = Message::notice( sprintf( @@ -421,7 +421,7 @@ class CentralColumns } } - if (! empty($colNotExist)) { + if ($colNotExist !== []) { $colNotExist = implode(',', array_unique($colNotExist)); $message = Message::notice( sprintf( diff --git a/libraries/classes/Database/Qbe.php b/libraries/classes/Database/Qbe.php index 5c295a6d85..46a8ee512e 100644 --- a/libraries/classes/Database/Qbe.php +++ b/libraries/classes/Database/Qbe.php @@ -671,7 +671,7 @@ class Qbe } if ( - (empty($this->prevCriteria) + ($this->prevCriteria === [] || ! isset($this->prevCriteria[$columnIndex])) || $this->prevCriteria[$columnIndex] != $tmpCriteria ) { @@ -1158,7 +1158,7 @@ class Qbe } } - if (count($veryGood) > 0) { + if ($veryGood !== []) { $candidateColumns = $veryGood; // Candidates restricted in index+where } else { @@ -1222,7 +1222,7 @@ class Qbe } } - if (count($foreignTables)) { + if ($foreignTables !== []) { $candidateColumns = $foreignTables; } @@ -1387,7 +1387,7 @@ class Qbe // Tables that can not be combined with the table cluster // which includes master table $unfinalized = array_diff($searchTables, array_keys($finalized)); - if (count($unfinalized) > 0) { + if ($unfinalized !== []) { // We need to look for intermediary tables to JOIN unfinalized tables // Heuristic to chose intermediary tables is to look for tables // having relationships with unfinalized tables @@ -1425,7 +1425,7 @@ class Qbe } // We are done if no unfinalized tables anymore - if (count($tempUnfinalized) === 0) { + if ($tempUnfinalized === []) { break 3; } } @@ -1434,7 +1434,7 @@ class Qbe $unfinalized = array_diff($searchTables, array_keys($finalized)); // If there are still unfinalized tables - if (count($unfinalized) > 0) { + if ($unfinalized !== []) { // Add these tables as cartesian product before joined tables $join .= implode( ', ', @@ -1700,21 +1700,21 @@ class Qbe array|null $indexColumns, ): array { // now we want to find the best. - if (isset($uniqueColumns) && count($uniqueColumns) > 0) { + if (isset($uniqueColumns) && $uniqueColumns !== []) { $candidateColumns = $uniqueColumns; $needSort = 1; return [$candidateColumns, $needSort]; } - if (isset($indexColumns) && count($indexColumns) > 0) { + if (isset($indexColumns) && $indexColumns !== []) { $candidateColumns = $indexColumns; $needSort = 1; return [$candidateColumns, $needSort]; } - if (isset($whereClauseColumns) && count($whereClauseColumns) > 0) { + if (isset($whereClauseColumns) && $whereClauseColumns !== []) { $candidateColumns = $whereClauseColumns; $needSort = 0; diff --git a/libraries/classes/Database/Routines.php b/libraries/classes/Database/Routines.php index b8ace4ae8e..af4a318271 100644 --- a/libraries/classes/Database/Routines.php +++ b/libraries/classes/Database/Routines.php @@ -77,7 +77,7 @@ class Routines */ // FIXME: this must be simpler than that if ( - ! count($GLOBALS['errors']) + $GLOBALS['errors'] === [] && ( ! empty($_POST['editor_process_add']) || ! empty($_POST['editor_process_edit']) || (empty($_REQUEST['add_item']) && empty($_REQUEST['edit_item']) @@ -179,7 +179,7 @@ class Routines $routineQuery = $this->getQueryFromRequest(); // set by getQueryFromRequest() - if (! count($errors)) { + if ($errors === []) { // Execute the created query if (! empty($_POST['editor_process_edit'])) { if (! in_array($_POST['item_original_type'], ['PROCEDURE', 'FUNCTION'], true)) { @@ -245,7 +245,7 @@ class Routines } } - if (count($errors)) { + if ($errors !== []) { $GLOBALS['message'] = Message::error( __( 'One or more errors have occurred while processing your request:', @@ -1100,7 +1100,7 @@ class Routines if ($routine['item_type'] === 'PROCEDURE') { $queries[] = 'CALL ' . Util::backquote($routine['item_name']) . '(' . implode(', ', $args) . ");\n"; - if (count($endQuery)) { + if ($endQuery !== []) { $queries[] = 'SELECT ' . implode(', ', $endQuery) . ";\n"; } } else { diff --git a/libraries/classes/DatabaseInterface.php b/libraries/classes/DatabaseInterface.php index d422ff0fa4..996a20c38e 100644 --- a/libraries/classes/DatabaseInterface.php +++ b/libraries/classes/DatabaseInterface.php @@ -35,7 +35,6 @@ use function array_shift; use function array_slice; use function basename; use function closelog; -use function count; use function defined; use function explode; use function implode; @@ -689,7 +688,7 @@ class DatabaseInterface implements DbalInterface $databases = $this->fetchResult($sql, 'SCHEMA_NAME', null, $connectionType); $mysqlError = $this->getError($connectionType); - if (! count($databases) && isset($GLOBALS['errno'])) { + if ($databases === [] && isset($GLOBALS['errno'])) { Generator::mysqlDie($mysqlError, $sql); } diff --git a/libraries/classes/ErrorReport.php b/libraries/classes/ErrorReport.php index cbdf501761..b9cc9831ec 100644 --- a/libraries/classes/ErrorReport.php +++ b/libraries/classes/ErrorReport.php @@ -260,7 +260,7 @@ class ErrorReport 'allowed_to_send_error_reports' => $this->config->get('SendErrorReports') !== 'never', ]; - if (! empty($reportData)) { + if ($reportData !== []) { $datas['hidden_fields'] = Url::getHiddenFields($reportData, '', true); } diff --git a/libraries/classes/Html/Generator.php b/libraries/classes/Html/Generator.php index f309c2df1a..5d822ea526 100644 --- a/libraries/classes/Html/Generator.php +++ b/libraries/classes/Html/Generator.php @@ -761,7 +761,7 @@ class Generator if ($sqlQuery === '') { $formattedSql = ''; - } elseif (count($errors)) { + } elseif ($errors !== []) { $formattedSql = htmlspecialchars($sqlQuery); } else { $formattedSql = self::formatSql($sqlQuery, true); diff --git a/libraries/classes/Normalization.php b/libraries/classes/Normalization.php index 0d24ecf166..14b4674a34 100644 --- a/libraries/classes/Normalization.php +++ b/libraries/classes/Normalization.php @@ -651,7 +651,7 @@ class Normalization $dropCols = false; $error = false; $headText = '

' . __('The third step of normalization is complete.') . '

'; - if (count($newTables) === 0) { + if ($newTables === []) { return ['legendText' => __('End of step'), 'headText' => $headText, 'queryError' => false]; } diff --git a/libraries/classes/Pdf.php b/libraries/classes/Pdf.php index 77518f35aa..1fb9c5de71 100644 --- a/libraries/classes/Pdf.php +++ b/libraries/classes/Pdf.php @@ -112,7 +112,7 @@ class Pdf extends TCPDF */ public function _putpages(): void { - if (count($this->alias) > 0) { + if ($this->alias !== []) { $nbPages = count($this->pages); for ($n = 1; $n <= $nbPages; $n++) { $this->pages[$n] = strtr($this->pages[$n], $this->alias); diff --git a/libraries/classes/Plugins/Export/ExportXml.php b/libraries/classes/Plugins/Export/ExportXml.php index 340f35875b..e14d205737 100644 --- a/libraries/classes/Plugins/Export/ExportXml.php +++ b/libraries/classes/Plugins/Export/ExportXml.php @@ -19,7 +19,6 @@ use PhpMyAdmin\Util; use PhpMyAdmin\Version; use function __; -use function count; use function htmlspecialchars; use function is_array; use function mb_substr; @@ -247,7 +246,7 @@ class ExportXml extends ExportPlugin . '" collation="' . htmlspecialchars($dbCollation) . '" charset="' . htmlspecialchars($dbCharset) . '">' . "\n"; - if (count($tables) === 0) { + if ($tables === []) { $tables[] = $table; } diff --git a/libraries/classes/Plugins/Import/ImportCsv.php b/libraries/classes/Plugins/Import/ImportCsv.php index ae1f8d8996..0824d805e2 100644 --- a/libraries/classes/Plugins/Import/ImportCsv.php +++ b/libraries/classes/Plugins/Import/ImportCsv.php @@ -712,7 +712,7 @@ class ImportCsv extends AbstractImportCsv // check to see if {filename} as table exist $nameArray = preg_grep('/' . $importFileName . '/isU', $result); // if no use filename as table name - if ($nameArray === false || count($nameArray) === 0) { + if ($nameArray === false || $nameArray === []) { return $importFileName; } @@ -787,7 +787,7 @@ class ImportCsv extends AbstractImportCsv } foreach ($tmp as $val) { - if (count($fields) > 0) { + if ($fields !== []) { $sqlTemplate .= ', '; } diff --git a/libraries/classes/Plugins/Import/ImportMediawiki.php b/libraries/classes/Plugins/Import/ImportMediawiki.php index 0b8ed47119..dce895829e 100644 --- a/libraries/classes/Plugins/Import/ImportMediawiki.php +++ b/libraries/classes/Plugins/Import/ImportMediawiki.php @@ -133,6 +133,7 @@ class ImportMediawiki extends ImportPlugin $lastChunkLine = $bufferLines[--$fullBufferLinesCount]; } + $curTempLine = []; for ($lineNr = 0; $lineNr < $fullBufferLinesCount; ++$lineNr) { $curBufferLine = trim($bufferLines[$lineNr]); @@ -206,7 +207,7 @@ class ImportMediawiki extends ImportPlugin // Check begin row or end table // Add current line to the values storage - if (! empty($curTempLine)) { + if ($curTempLine !== []) { // If the current line contains header cells // ( marked with '!' ), // it will be marked as table header @@ -339,7 +340,7 @@ class ImportMediawiki extends ImportPlugin */ private function setTableHeaders(array &$tableHeaders, array $tableRow): void { - if (! empty($tableHeaders)) { + if ($tableHeaders !== []) { return; } diff --git a/libraries/classes/Plugins/Import/ImportShp.php b/libraries/classes/Plugins/Import/ImportShp.php index 8c41b62741..f3f224d2b9 100644 --- a/libraries/classes/Plugins/Import/ImportShp.php +++ b/libraries/classes/Plugins/Import/ImportShp.php @@ -239,7 +239,7 @@ class ImportShp extends ImportPlugin } } - if (count($rows) === 0) { + if ($rows === []) { $GLOBALS['error'] = true; $GLOBALS['message'] = Message::error( __('The imported file does not contain any data!'), diff --git a/libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php index e64a13507f..ccb2448766 100644 --- a/libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php @@ -11,7 +11,6 @@ use PhpMyAdmin\FieldMetadata; use PhpMyAdmin\Plugins\TransformationsPlugin; use function __; -use function count; use function fclose; use function feof; use function fgets; @@ -98,8 +97,13 @@ abstract class ExternalTransformationsPlugin extends TransformationsPlugin //$allowed_programs[0] = '/usr/local/bin/tidy'; //$allowed_programs[1] = '/usr/local/bin/validate'; - // no-op when no allowed programs - if (count($allowedPrograms) === 0) { + /** + * no-op when no allowed programs + * + * @psalm-suppress RedundantCondition + * @phpstan-ignore-next-line + */ + if ($allowedPrograms === []) { return $buffer; } diff --git a/libraries/classes/RecentFavoriteTable.php b/libraries/classes/RecentFavoriteTable.php index 0d2612d551..8e850c6517 100644 --- a/libraries/classes/RecentFavoriteTable.php +++ b/libraries/classes/RecentFavoriteTable.php @@ -184,7 +184,7 @@ class RecentFavoriteTable */ public function getHtmlList(): string { - if (count($this->tables)) { + if ($this->tables !== []) { if ($this->tableType === 'recent') { $tables = []; foreach ($this->tables as $table) { diff --git a/libraries/classes/Replication/ReplicationInfo.php b/libraries/classes/Replication/ReplicationInfo.php index c4914e952b..51269751f3 100644 --- a/libraries/classes/Replication/ReplicationInfo.php +++ b/libraries/classes/Replication/ReplicationInfo.php @@ -6,7 +6,6 @@ namespace PhpMyAdmin\Replication; use PhpMyAdmin\DatabaseInterface; -use function count; use function explode; use function sprintf; @@ -141,7 +140,7 @@ final class ReplicationInfo { $this->primaryInfo = ['status' => false]; - if (count($this->primaryStatus) > 0) { + if ($this->primaryStatus !== []) { $this->primaryInfo['status'] = true; } @@ -163,7 +162,7 @@ final class ReplicationInfo { $this->replicaInfo = ['status' => false]; - if (count($this->replicaStatus) > 0) { + if ($this->replicaStatus !== []) { $this->replicaInfo['status'] = true; } diff --git a/libraries/classes/Session.php b/libraries/classes/Session.php index 12cdb6c5c0..637619586f 100644 --- a/libraries/classes/Session.php +++ b/libraries/classes/Session.php @@ -116,7 +116,7 @@ class Session if (! empty(ini_get('session.auto_start')) && session_name() !== 'phpMyAdmin' && ! empty(session_id())) { // Do not delete the existing non empty session, it might be used by // other applications; instead just close it. - if (empty($_SESSION)) { + if ($_SESSION === []) { // Ignore errors as this might have been destroyed in other // request meanwhile @session_destroy(); diff --git a/libraries/classes/Setup/ConfigGenerator.php b/libraries/classes/Setup/ConfigGenerator.php index 759fcf6a9c..87a26e04bf 100644 --- a/libraries/classes/Setup/ConfigGenerator.php +++ b/libraries/classes/Setup/ConfigGenerator.php @@ -100,7 +100,7 @@ class ConfigGenerator return sprintf('$cfg[\'blowfish_secret\'] = \sodium_hex2bin(\'%s\');%s', sodium_bin2hex($secret), $eol); } - if (! is_array($varValue) || empty($varValue)) { + if (! is_array($varValue) || $varValue === []) { return "\$cfg['" . $varName . "'] = " . var_export($varValue, true) . ';' . $eol; } diff --git a/libraries/classes/Sql.php b/libraries/classes/Sql.php index 532cec051a..4b77f9bb9e 100644 --- a/libraries/classes/Sql.php +++ b/libraries/classes/Sql.php @@ -346,7 +346,7 @@ class Sql // and the true error message to the query executor return (isset($statementInfo->parser) - && count($statementInfo->parser->errors) === 0) + && $statementInfo->parser->errors === []) && ($_SESSION['tmpval']['max_rows'] !== 'all') && ! ($statementInfo->isExport || $statementInfo->isAnalyse) diff --git a/libraries/classes/Table.php b/libraries/classes/Table.php index c09c6464f0..ded1ac5e0a 100644 --- a/libraries/classes/Table.php +++ b/libraries/classes/Table.php @@ -657,11 +657,11 @@ class Table implements Stringable $checkQuery = 'SELECT '; $uniqueFields = $this->getUniqueColumns(true, false); - if (count($uniqueFields) > 0) { + if ($uniqueFields !== []) { $fieldsToSelect = implode(', ', $uniqueFields); } else { $indexedCols = $this->getIndexedColumns(true, false); - if (count($indexedCols) > 0) { + if ($indexedCols !== []) { $fieldsToSelect = implode(', ', $indexedCols); } else { $fieldsToSelect = '*'; diff --git a/libraries/classes/Table/Search.php b/libraries/classes/Table/Search.php index d8cbff615b..1aee600def 100644 --- a/libraries/classes/Table/Search.php +++ b/libraries/classes/Table/Search.php @@ -115,7 +115,7 @@ final class Search $fullWhereClause[] = $whereClause; } - if (! empty($fullWhereClause)) { + if ($fullWhereClause !== []) { return ' WHERE ' . implode(' AND ', $fullWhereClause); } @@ -227,7 +227,7 @@ final class Search } $wheres = []; - if (! empty($values)) { + if ($values !== []) { $wheres[] = $backquotedName . ' ' . $funcType . ' (' . implode(',', $values) . ')'; } diff --git a/libraries/classes/Util.php b/libraries/classes/Util.php index f7dbc0b943..3bcd2a7b85 100644 --- a/libraries/classes/Util.php +++ b/libraries/classes/Util.php @@ -2024,7 +2024,7 @@ class Util } // is there at least one "in use" table? - if (count($sotCache) > 0) { + if ($sotCache !== []) { $tblGroupSql = ''; $whereAdded = false; if ( @@ -2073,7 +2073,7 @@ class Util } } - if (count($names) > 0) { + if ($names !== []) { $tables += $GLOBALS['dbi']->getTablesFull($db, $names); } diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index 39d0050415..cc9c7e11c1 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -6850,11 +6850,6 @@ parameters: count: 1 path: libraries/classes/Plugins/Transformations/Abs/DateFormatTransformationsPlugin.php - - - message: "#^Strict comparison using \\=\\=\\= between 0 and 0 will always evaluate to true\\.$#" - count: 1 - path: libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 diff --git a/psalm-baseline.xml b/psalm-baseline.xml index 5a21fcfc56..07dc380b56 100644 --- a/psalm-baseline.xml +++ b/psalm-baseline.xml @@ -10323,22 +10323,14 @@ $table[2][0] - - $curTempLine[] - $cell $cell - $curTempTableHeaders - $curTempTable[] $cellData[1] - - $curTempLine - string[] diff --git a/test/classes/AbstractNetworkTestCase.php b/test/classes/AbstractNetworkTestCase.php index 356a143612..b215b2d47b 100644 --- a/test/classes/AbstractNetworkTestCase.php +++ b/test/classes/AbstractNetworkTestCase.php @@ -61,7 +61,7 @@ abstract class AbstractNetworkTestCase extends AbstractTestCase ->with() ->will($this->returnValue(false)); - if (count($param) > 0) { + if ($param !== []) { if (is_array($param[0])) { if (is_array($param[0][0]) && count($param) === 1) { $param = $param[0];