1
0
mirror of https://github.com/vrana/adminer.git synced 2025-08-06 14:46:36 +02:00

PHPStan: Fix level 0 errors

This commit is contained in:
Jakub Vrana
2025-03-26 12:41:52 +01:00
parent f75f0aacfe
commit 63c258a7f9
10 changed files with 36 additions and 26 deletions

View File

@@ -1184,7 +1184,7 @@ if (!defined('Adminer\DRIVER')) {
/** Convert field in select and edit
* @param Field one element from fields()
* @return string
* @return ?string
*/
function convert_field($field) {
if (preg_match("~binary~", $field["type"])) {

View File

@@ -176,9 +176,7 @@ if (isset($_GET["pgsql"])) {
return $return;
}
function warnings() {
return ''; // not implemented in PDO_PgSQL as of PHP 7.2.1
}
// warnings() not implemented in PDO_PgSQL as of PHP 7.2.1
function close() {
}

View File

@@ -22,7 +22,7 @@ class Adminer {
}
/** Get SSL connection options
* @return string[] or null
* @return ?string[]
*/
function connectSsl() {
}
@@ -289,7 +289,7 @@ class Adminer {
/** Get a link to use in select table
* @param string raw value of the field
* @param Field single field returned from fields()
* @return string or null to create the default link
* @return ?string null to create the default link
*/
function selectLink($val, $field) {
}

View File

@@ -61,14 +61,14 @@ abstract class SqlDriver {
/** Get enum values
* @param Field
* @return string or null
* @return ?string
*/
function enumLength($field) {
}
/** Function used to convert the value inputted by user
* @param Field
* @return string or null
* @return ?string
*/
function unconvertFunction($field) {
}
@@ -187,7 +187,7 @@ abstract class SqlDriver {
/** Return query with a timeout
* @param string
* @param int seconds
* @return string or null if the driver doesn't support query timeouts
* @return ?string null if the driver doesn't support query timeouts
*/
function slowQuery($query, $timeout) {
}
@@ -231,16 +231,15 @@ abstract class SqlDriver {
}
/** Get warnings about the last command
* @return string HTML
* @return ?string HTML
*/
function warnings() {
return '';
}
/** Get help link for table
* @param string
* @param bool
* @return string relative URL or null
* @return ?string relative URL
*/
function tableHelp($name, $is_view = false) {
}

View File

@@ -299,7 +299,7 @@ function default_value($field) {
/** Get type class to use in CSS
* @param string
* @return string class=''
* @return ?string class=''
*/
function type_class($type) {
foreach (

View File

@@ -66,8 +66,8 @@ function escape_string($val) {
}
/** Get a possibly missing item from a possibly missing array
* idx($row, $key) is better than $row[$key] ?? null because it reports error for undefined $row
* @param array|null
* idx($row, $key) is better than $row[$key] ?? null because PHP will report error for undefined $row
* @param ?array
* @param string|int
* @param mixed
* @return mixed
@@ -274,7 +274,7 @@ function get_rows($query, $connection2 = null, $error = "<p class='error'>") {
/** Find unique identifier of a row
* @param string[]
* @param Index[] result of indexes()
* @return string[] or null if there is no unique identifier
* @return ?string[] null if there is no unique identifier
*/
function unique_array($row, $indexes) {
foreach ($indexes as $index) {
@@ -377,11 +377,11 @@ function convert_fields($columns, $fields, $select = array()) {
* @param string
* @param string
* @param int number of seconds, 0 for session cookie, 2592000 - 30 days
* @return bool
* @return null
*/
function cookie($name, $value, $lifetime = 2592000) {
global $HTTPS;
return header(
header(
"Set-Cookie: $name=" . urlencode($value)
. ($lifetime ? "; expires=" . gmdate("D, d M Y H:i:s", time() + $lifetime) . " GMT" : "")
. "; path=" . preg_replace('~\?.*~', '', $_SERVER["REQUEST_URI"])
@@ -413,10 +413,10 @@ function get_setting($key, $cookie = "adminer_settings") {
/** Store settings to a cookie
* @param mixed[]
* @param string
* @return bool
* @return null
*/
function save_settings($settings, $cookie = "adminer_settings") {
return cookie($cookie, http_build_query($settings + get_settings($cookie)));
cookie($cookie, http_build_query($settings + get_settings($cookie)));
}
/** Restart stopped session
@@ -495,7 +495,7 @@ function is_ajax() {
/** Send Location header and exit
* @param string null to only set a message
* @param string
* @return never
* @return null
*/
function redirect($location, $message = null) {
if ($message !== null) {

13
phpstan.neon Normal file
View File

@@ -0,0 +1,13 @@
parameters:
level: 0
ignoreErrors:
- identifier: include.fileNotFound # relative includes
- identifier: includeOnce.fileNotFound # ./adminer-plugins.php
- "~^Function (set_magic_quotes_runtime|mysql_)~" # PHP < 7 functions
- "~^Instantiated class Adminer\\w~" # no support for classes defined inside function
paths:
- .
phpVersion:
min: 70100
max: 80499
checkMissingCallableSignature: true

View File

@@ -27,8 +27,8 @@ if (isset($_GET["firebird"])) {
$this->_link = ibase_connect($server, $username, $password);
if ($this->_link) {
$url_parts = explode(':', $server);
$this->service_link = ibase_service_attach($url_parts[0], $username, $password);
$this->server_info = ibase_server_info($this->service_link, IBASE_SVC_SERVER_VERSION);
$service_link = ibase_service_attach($url_parts[0], $username, $password);
$this->server_info = ibase_server_info($service_link, IBASE_SVC_SERVER_VERSION);
} else {
$this->errno = ibase_errcode();
$this->error = ibase_errmsg();

View File

@@ -110,7 +110,7 @@ if (isset($_GET["imap"])) {
}
function expunge() {
return imap_expunge();
return imap_expunge($this->imap);
}
}
@@ -272,7 +272,7 @@ if (isset($_GET["imap"])) {
}
function truncate_tables($tables) {
return connection()->expunge($name);
return connection()->expunge();
}
function connect($credentials) {

View File

@@ -19,7 +19,7 @@ if (isset($_GET["mongo"])) {
}
function executeCommand($command) {
return $this->executeDbCommand($this->_db_name);
return $this->executeDbCommand($this->_db_name, $command);
}
function executeDbCommand($db, $command) {