Convert IconvExtraParams to $config

Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
This commit is contained in:
Kamil Tekiela 2025-01-24 19:52:25 +00:00
parent 5f7094d0bc
commit b5029a36d1
5 changed files with 5 additions and 21 deletions

View File

@ -6795,12 +6795,6 @@ parameters:
count: 2
path: src/Encoding.php
-
message: '#^Right side of && is always true\.$#'
identifier: booleanAnd.rightAlwaysTrue
count: 1
path: src/Encoding.php
-
message: '#^Static property PhpMyAdmin\\Encoding\:\:\$engine \(int\|null\) does not accept mixed\.$#'
identifier: assign.propertyType

View File

@ -4348,11 +4348,6 @@
<PossiblyUnusedMethod>
<code><![CDATA[setKanjiEncodings]]></code>
</PossiblyUnusedMethod>
<RedundantConditionGivenDocblockType>
<code><![CDATA[is_string($config->settings['IconvExtraParams'])]]></code>
<code><![CDATA[isset($config->settings['IconvExtraParams'])
&& is_string($config->settings['IconvExtraParams'])]]></code>
</RedundantConditionGivenDocblockType>
</file>
<file src="src/Engines/Innodb.php">
<DeprecatedMethod>

View File

@ -15,7 +15,6 @@ use function fopen;
use function function_exists;
use function fwrite;
use function iconv;
use function is_string;
use function mb_convert_encoding;
use function mb_convert_kana;
use function mb_detect_encoding;
@ -164,12 +163,8 @@ class Encoding
$config = Config::getInstance();
$iconvExtraParams = '';
if (
isset($config->settings['IconvExtraParams'])
&& is_string($config->settings['IconvExtraParams'])
&& str_starts_with($config->settings['IconvExtraParams'], '//')
) {
$iconvExtraParams = $config->settings['IconvExtraParams'];
if (str_starts_with($config->config->IconvExtraParams, '//')) {
$iconvExtraParams = $config->config->IconvExtraParams;
}
return match (self::$engine) {

View File

@ -31,7 +31,7 @@ class DbiDummyTest extends AbstractTestCase
$this->dbi = $this->createDatabaseInterface($this->dummyDbi);
DatabaseInterface::$instance = $this->dbi;
$config = Config::getInstance();
$config->settings['IconvExtraParams'] = '';
$config->set('IconvExtraParams', '');
}
public function testGetClientInfo(): void

View File

@ -82,7 +82,7 @@ class EncodingTest extends AbstractTestCase
$config = Config::getInstance();
if (PHP_INT_SIZE === 8) {
$config->settings['IconvExtraParams'] = '//TRANSLIT';
$config->set('IconvExtraParams', '//TRANSLIT');
Encoding::setEngine(Encoding::ENGINE_ICONV);
self::assertSame(
"This is the Euro symbol 'EUR'.",
@ -95,7 +95,7 @@ class EncodingTest extends AbstractTestCase
} elseif (PHP_INT_SIZE === 4) {
// NOTE: this does not work on 32bit systems and requires "//IGNORE"
// NOTE: or it will throw "iconv(): Detected an illegal character in input string"
$config->settings['IconvExtraParams'] = '//TRANSLIT//IGNORE';
$config->set('IconvExtraParams', '//TRANSLIT//IGNORE');
Encoding::setEngine(Encoding::ENGINE_ICONV);
self::assertSame(
"This is the Euro symbol ''.",