From 2d02a15de37f2552e5974975d1216cbf1ae1ff85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maur=C3=ADcio=20Meneghini=20Fauth?= Date: Tue, 26 May 2020 18:30:57 -0300 Subject: [PATCH] Add static to closures that don't use $this MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: MaurĂ­cio Meneghini Fauth --- js/messages.php | 2 +- libraries/classes/Advisor.php | 26 +++++------ libraries/classes/Config.php | 2 +- libraries/classes/Core.php | 2 +- libraries/classes/DatabaseInterface.php | 2 +- libraries/classes/LanguageManager.php | 2 +- libraries/classes/Plugins.php | 2 +- .../Plugins/Auth/AuthenticationSignon.php | 2 +- libraries/classes/Sanitize.php | 4 +- libraries/classes/Server/Privileges.php | 2 +- libraries/classes/StorageEngine.php | 2 +- libraries/routes.php | 46 +++++++++---------- libraries/services_loader.php | 4 +- .../Table/RelationControllerTest.php | 4 +- .../Table/SearchControllerTest.php | 2 +- .../Table/StructureControllerTest.php | 2 +- 16 files changed, 53 insertions(+), 53 deletions(-) diff --git a/js/messages.php b/js/messages.php index 892daa3107..e8ae6535ce 100644 --- a/js/messages.php +++ b/js/messages.php @@ -41,7 +41,7 @@ $buffer = OutputBuffering::getInstance(); $buffer->start(); if (! defined('TESTSUITE')) { register_shutdown_function( - function () { + static function () { echo OutputBuffering::getInstance()->getContents(); } ); diff --git a/libraries/classes/Advisor.php b/libraries/classes/Advisor.php index 0c22d2cadf..318e67547a 100644 --- a/libraries/classes/Advisor.php +++ b/libraries/classes/Advisor.php @@ -72,19 +72,19 @@ class Advisor */ $this->expression->register( 'round', - function () { + static function () { }, /** * @param array $arguments * @param float $num */ - function ($arguments, $num) { + static function ($arguments, $num) { return round($num); } ); $this->expression->register( 'substr', - function () { + static function () { }, /** * @param array $arguments @@ -92,51 +92,51 @@ class Advisor * @param int $start * @param int $length */ - function ($arguments, $string, $start, $length) { + static function ($arguments, $string, $start, $length) { return substr($string, $start, $length); } ); $this->expression->register( 'preg_match', - function () { + static function () { }, /** * @param array $arguments * @param string $pattern * @param string $subject */ - function ($arguments, $pattern, $subject) { + static function ($arguments, $pattern, $subject) { return preg_match($pattern, $subject); } ); $this->expression->register( 'ADVISOR_bytime', - function () { + static function () { }, /** * @param array $arguments * @param float $num * @param int $precision */ - function ($arguments, $num, $precision) { + static function ($arguments, $num, $precision) { return self::byTime($num, $precision); } ); $this->expression->register( 'ADVISOR_timespanFormat', - function () { + static function () { }, /** * @param array $arguments * @param string $seconds */ - function ($arguments, $seconds) { + static function ($arguments, $seconds) { return self::timespanFormat((int) $seconds); } ); $this->expression->register( 'ADVISOR_formatByteDown', - function () { + static function () { }, /** * @param array $arguments @@ -144,13 +144,13 @@ class Advisor * @param int $limes * @param int $comma */ - function ($arguments, $value, $limes = 6, $comma = 0) { + static function ($arguments, $value, $limes = 6, $comma = 0) { return self::formatByteDown($value, $limes, $comma); } ); $this->expression->register( 'fired', - function () { + static function () { }, /** * @param array $arguments diff --git a/libraries/classes/Config.php b/libraries/classes/Config.php index fc6904db77..f2ae7f1923 100644 --- a/libraries/classes/Config.php +++ b/libraries/classes/Config.php @@ -481,7 +481,7 @@ class Config */ $matched_keys = array_filter( array_keys($cfg), - function ($key) { + static function ($key) { return strpos($key, '/') === false; } ); diff --git a/libraries/classes/Core.php b/libraries/classes/Core.php index d8c7ac666b..50a20f0bad 100644 --- a/libraries/classes/Core.php +++ b/libraries/classes/Core.php @@ -868,7 +868,7 @@ class Core /** * @param mixed $item */ - function ($item) use (&$empty) { + static function ($item) use (&$empty) { $empty = $empty && empty($item); } ); diff --git a/libraries/classes/DatabaseInterface.php b/libraries/classes/DatabaseInterface.php index b922086128..17e6158c6f 100644 --- a/libraries/classes/DatabaseInterface.php +++ b/libraries/classes/DatabaseInterface.php @@ -634,7 +634,7 @@ class DatabaseInterface implements DbalInterface * @param array $a * @param array $b */ - function ($a, $b) { + static function ($a, $b) { $aLength = $a['Data_length'] + $a['Index_length']; $bLength = $b['Data_length'] + $b['Index_length']; diff --git a/libraries/classes/LanguageManager.php b/libraries/classes/LanguageManager.php index 88554fd7f9..46d7d1681b 100644 --- a/libraries/classes/LanguageManager.php +++ b/libraries/classes/LanguageManager.php @@ -810,7 +810,7 @@ class LanguageManager public function sortedLanguages() { $this->availableLanguages(); - uasort($this->_available_languages, function (Language $a, Language $b) { + uasort($this->_available_languages, static function (Language $a, Language $b) { return $a->cmp($b); }); diff --git a/libraries/classes/Plugins.php b/libraries/classes/Plugins.php index f6d0221575..9fd0177b8b 100644 --- a/libraries/classes/Plugins.php +++ b/libraries/classes/Plugins.php @@ -140,7 +140,7 @@ class Plugins * @param mixed $cmp_name_1 * @param mixed $cmp_name_2 */ - function ($cmp_name_1, $cmp_name_2) { + static function ($cmp_name_1, $cmp_name_2) { return strcasecmp( $cmp_name_1->getProperties()->getText(), $cmp_name_2->getProperties()->getText() diff --git a/libraries/classes/Plugins/Auth/AuthenticationSignon.php b/libraries/classes/Plugins/Auth/AuthenticationSignon.php index 44fd7fbe7c..a45ba575c5 100644 --- a/libraries/classes/Plugins/Auth/AuthenticationSignon.php +++ b/libraries/classes/Plugins/Auth/AuthenticationSignon.php @@ -62,7 +62,7 @@ class AuthenticationSignon extends AuthenticationPlugin } /* Sanitize cookie params */ - $defaultCookieParams = function (string $key) { + $defaultCookieParams = static function (string $key) { switch ($key) { case 'lifetime': return 0; diff --git a/libraries/classes/Sanitize.php b/libraries/classes/Sanitize.php index a11edbada5..d44e274f25 100644 --- a/libraries/classes/Sanitize.php +++ b/libraries/classes/Sanitize.php @@ -208,14 +208,14 @@ class Sanitize $pattern = '/\[a@([^]"@]*)(@([^]"]*))?\]/'; /* Find and replace all links */ - $message = preg_replace_callback($pattern, function (array $match) { + $message = preg_replace_callback($pattern, static function (array $match) { return self::replaceBBLink($match); }, $message); /* Replace documentation links */ $message = preg_replace_callback( '/\[doc@([a-zA-Z0-9_-]+)(@([a-zA-Z0-9_-]*))?\]/', - function (array $match) { + static function (array $match) { return self::replaceDocLink($match); }, $message diff --git a/libraries/classes/Server/Privileges.php b/libraries/classes/Server/Privileges.php index 67a5777f2e..8072471513 100644 --- a/libraries/classes/Server/Privileges.php +++ b/libraries/classes/Server/Privileges.php @@ -246,7 +246,7 @@ class Privileges // Required for proper escaping of ` (backtick) in a column name $grant_cols = array_map( /** @param string $val */ - function ($val) { + static function ($val) { return Util::backquote($val); }, $GLOBALS[$current_grant[0]] diff --git a/libraries/classes/StorageEngine.php b/libraries/classes/StorageEngine.php index b8f24f591e..d0c38e797f 100644 --- a/libraries/classes/StorageEngine.php +++ b/libraries/classes/StorageEngine.php @@ -105,7 +105,7 @@ class StorageEngine if ($GLOBALS['dbi']->getVersion() >= 50708) { $disabled = (string) Util::cacheGet( 'disabled_storage_engines', - function () { + static function () { return $GLOBALS['dbi']->fetchValue( 'SELECT @@disabled_storage_engines' ); diff --git a/libraries/routes.php b/libraries/routes.php index e902499bd0..1964238a00 100644 --- a/libraries/routes.php +++ b/libraries/routes.php @@ -97,15 +97,15 @@ if (! defined('PHPMYADMIN')) { exit; } -return function (RouteCollector $routes) { - $routes->addGroup('', function (RouteCollector $routes) { +return static function (RouteCollector $routes) { + $routes->addGroup('', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '[/]', [HomeController::class, 'index']); $routes->post('/set-theme', [HomeController::class, 'setTheme']); $routes->post('/collation-connection', [HomeController::class, 'setCollationConnection']); $routes->addRoute(['GET', 'POST'], '/recent-table', [HomeController::class, 'reloadRecentTablesList']); $routes->addRoute(['GET', 'POST'], '/git-revision', [HomeController::class, 'gitRevision']); }); - $routes->addGroup('/ajax', function (RouteCollector $routes) { + $routes->addGroup('/ajax', static function (RouteCollector $routes) { $routes->post('/list-databases', [AjaxController::class, 'databases']); $routes->post('/list-tables', [AjaxController::class, 'tables']); $routes->post('/list-columns', [AjaxController::class, 'columns']); @@ -115,14 +115,14 @@ return function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/browse-foreigners', [BrowseForeignersController::class, 'index']); $routes->get('/changelog', [ChangeLogController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/check-relations', [CheckRelationsController::class, 'index']); - $routes->addGroup('/database', function (RouteCollector $routes) { + $routes->addGroup('/database', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/central-columns', [CentralColumnsController::class, 'index']); $routes->get('/data-dictionary', [DataDictionaryController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/designer', [DesignerController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/events', [EventsController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/export', [DatabaseExportController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/import', [DatabaseImportController::class, 'index']); - $routes->addGroup('/multi-table-query', function (RouteCollector $routes) { + $routes->addGroup('/multi-table-query', static function (RouteCollector $routes) { $routes->get('', [MultiTableQueryController::class, 'index']); $routes->get('/tables', [MultiTableQueryController::class, 'table']); $routes->post('/query', [MultiTableQueryController::class, 'displayResults']); @@ -131,12 +131,12 @@ return function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/qbe', [QueryByExampleController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/routines', [RoutinesController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/search', [SearchController::class, 'index']); - $routes->addGroup('/sql', function (RouteCollector $routes) { + $routes->addGroup('/sql', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '', [DatabaseSqlController::class, 'index']); $routes->post('/autocomplete', [SqlAutoCompleteController::class, 'index']); $routes->post('/format', [SqlFormatController::class, 'index']); }); - $routes->addGroup('/structure', function (RouteCollector $routes) { + $routes->addGroup('/structure', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '', [StructureController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/favorite-table', [ StructureController::class, @@ -161,7 +161,7 @@ return function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/navigation', [NavigationController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/normalization', [NormalizationController::class, 'index']); $routes->get('/phpinfo', [PhpInfoController::class, 'index']); - $routes->addGroup('/preferences', function (RouteCollector $routes) { + $routes->addGroup('/preferences', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/export', [PreferencesExportController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/features', [FeaturesController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/import', [PreferencesImportController::class, 'index']); @@ -172,15 +172,15 @@ return function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/two-factor', [TwoFactorController::class, 'index']); }); $routes->addRoute(['GET', 'POST'], '/schema-export', [SchemaExportController::class, 'index']); - $routes->addGroup('/server', function (RouteCollector $routes) { + $routes->addGroup('/server', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/binlog', [BinlogController::class, 'index']); $routes->get('/collations', [CollationsController::class, 'index']); - $routes->addGroup('/databases', function (RouteCollector $routes) { + $routes->addGroup('/databases', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '', [DatabasesController::class, 'index']); $routes->post('/create', [DatabasesController::class, 'create']); $routes->post('/destroy', [DatabasesController::class, 'destroy']); }); - $routes->addGroup('/engines', function (RouteCollector $routes) { + $routes->addGroup('/engines', static function (RouteCollector $routes) { $routes->get('', [EnginesController::class, 'index']); $routes->get('/{engine}[/{page}]', [EnginesController::class, 'show']); }); @@ -190,10 +190,10 @@ return function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/privileges', [PrivilegesController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/replication', [ReplicationController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/sql', [ServerSqlController::class, 'index']); - $routes->addGroup('/status', function (RouteCollector $routes) { + $routes->addGroup('/status', static function (RouteCollector $routes) { $routes->get('', [StatusController::class, 'index']); $routes->get('/advisor', [AdvisorController::class, 'index']); - $routes->addGroup('/monitor', function (RouteCollector $routes) { + $routes->addGroup('/monitor', static function (RouteCollector $routes) { $routes->get('', [MonitorController::class, 'index']); $routes->post('/chart', [MonitorController::class, 'chartingData']); $routes->post('/slow-log', [MonitorController::class, 'logDataTypeSlow']); @@ -201,7 +201,7 @@ return function (RouteCollector $routes) { $routes->post('/log-vars', [MonitorController::class, 'loggingVars']); $routes->post('/query', [MonitorController::class, 'queryAnalyzer']); }); - $routes->addGroup('/processes', function (RouteCollector $routes) { + $routes->addGroup('/processes', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '', [ProcessesController::class, 'index']); $routes->post('/refresh', [ProcessesController::class, 'refresh']); $routes->post('/kill/{id:\d+}', [ProcessesController::class, 'kill']); @@ -210,13 +210,13 @@ return function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/variables', [StatusVariables::class, 'index']); }); $routes->addRoute(['GET', 'POST'], '/user-groups', [UserGroupsController::class, 'index']); - $routes->addGroup('/variables', function (RouteCollector $routes) { + $routes->addGroup('/variables', static function (RouteCollector $routes) { $routes->get('', [VariablesController::class, 'index']); $routes->get('/get/{name}', [VariablesController::class, 'getValue']); $routes->post('/set/{name}', [VariablesController::class, 'setValue']); }); }); - $routes->addGroup('/sql', function (RouteCollector $routes) { + $routes->addGroup('/sql', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '', [SqlController::class, 'index']); $routes->post('/get-relational-values', [SqlController::class, 'getRelationalValues']); $routes->post('/get-enum-values', [SqlController::class, 'getEnumValues']); @@ -224,19 +224,19 @@ return function (RouteCollector $routes) { $routes->get('/get-default-fk-check-value', [SqlController::class, 'getDefaultForeignKeyCheckValue']); $routes->post('/set-column-preferences', [SqlController::class, 'setColumnOrderOrVisibility']); }); - $routes->addGroup('/table', function (RouteCollector $routes) { + $routes->addGroup('/table', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/add-field', [AddFieldController::class, 'index']); - $routes->addGroup('/change', function (RouteCollector $routes) { + $routes->addGroup('/change', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '', [ChangeController::class, 'index']); $routes->post('/rows', [ChangeController::class, 'rows']); }); $routes->addRoute(['GET', 'POST'], '/chart', [ChartController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/create', [CreateController::class, 'index']); - $routes->addGroup('/delete', function (RouteCollector $routes) { + $routes->addGroup('/delete', static function (RouteCollector $routes) { $routes->post('/confirm', [DeleteController::class, 'confirm']); $routes->post('/rows', [DeleteController::class, 'rows']); }); - $routes->addGroup('/export', function (RouteCollector $routes) { + $routes->addGroup('/export', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '', [TableExportController::class, 'index']); $routes->post('/rows', [TableExportController::class, 'rows']); }); @@ -251,7 +251,7 @@ return function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/replace', [ReplaceController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/search', [TableSearchController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/sql', [TableSqlController::class, 'index']); - $routes->addGroup('/structure', function (RouteCollector $routes) { + $routes->addGroup('/structure', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '', [TableStructureController::class, 'index']); $routes->post('/browse', [TableStructureController::class, 'browse']); $routes->post('/central-columns-add', [TableStructureController::class, 'addToCentralColumns']); @@ -272,13 +272,13 @@ return function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/zoom-search', [ZoomSearchController::class, 'index']); }); $routes->get('/themes', [ThemesController::class, 'index']); - $routes->addGroup('/transformation', function (RouteCollector $routes) { + $routes->addGroup('/transformation', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/overview', [TransformationOverviewController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/wrapper', [TransformationWrapperController::class, 'index']); }); $routes->addRoute(['GET', 'POST'], '/user-password', [UserPasswordController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/version-check', [VersionCheckController::class, 'index']); - $routes->addGroup('/view', function (RouteCollector $routes) { + $routes->addGroup('/view', static function (RouteCollector $routes) { $routes->addRoute(['GET', 'POST'], '/create', [ViewCreateController::class, 'index']); $routes->addRoute(['GET', 'POST'], '/operations', [ViewOperationsController::class, 'index']); }); diff --git a/libraries/services_loader.php b/libraries/services_loader.php index c2cee52f4a..8e8a500933 100644 --- a/libraries/services_loader.php +++ b/libraries/services_loader.php @@ -8,9 +8,9 @@ use Symfony\Component\DependencyInjection\Reference; use function is_string; use function substr; -return function (ContainerConfigurator $configurator) { +return static function (ContainerConfigurator $configurator) { $services = $configurator->services(); - $loadServices = function (array $servicesFile, ServicesConfigurator $services): void { + $loadServices = static function (array $servicesFile, ServicesConfigurator $services): void { foreach ($servicesFile['services'] as $serviceName => $service) { if (is_string($service)) { $services->alias($serviceName, $service); diff --git a/test/classes/Controllers/Table/RelationControllerTest.php b/test/classes/Controllers/Table/RelationControllerTest.php index 1a24a2ed0e..3e42f9281f 100644 --- a/test/classes/Controllers/Table/RelationControllerTest.php +++ b/test/classes/Controllers/Table/RelationControllerTest.php @@ -193,7 +193,7 @@ class RelationControllerTest extends AbstractTestCase ->method('fetchArray') ->will( $this->returnCallback( - function () { + static function () { static $count = 0; if ($count == 0) { $count++; @@ -242,7 +242,7 @@ class RelationControllerTest extends AbstractTestCase ->method('fetchArray') ->will( $this->returnCallback( - function () { + static function () { static $count = 0; if ($count == 0) { $count++; diff --git a/test/classes/Controllers/Table/SearchControllerTest.php b/test/classes/Controllers/Table/SearchControllerTest.php index 513aff9ca4..ee5f70fe93 100644 --- a/test/classes/Controllers/Table/SearchControllerTest.php +++ b/test/classes/Controllers/Table/SearchControllerTest.php @@ -155,7 +155,7 @@ class SearchControllerTest extends AbstractTestCase $GLOBALS['dbi']->expects($this->any())->method('fetchAssoc') ->will( $this->returnCallback( - function () { + static function () { static $count = 0; if ($count == 0) { $count++; diff --git a/test/classes/Controllers/Table/StructureControllerTest.php b/test/classes/Controllers/Table/StructureControllerTest.php index 8a77763bd1..d7002e6e5e 100644 --- a/test/classes/Controllers/Table/StructureControllerTest.php +++ b/test/classes/Controllers/Table/StructureControllerTest.php @@ -119,7 +119,7 @@ class StructureControllerTest extends AbstractTestCase ->method('fetchAssoc') ->will( $this->returnCallback( - function () { + static function () { static $callCount = 0; if ($callCount == 0) { $callCount++;