Skip to content

Commit 57d2042

Browse files
committed
Remove deprecated INI setting mbstring.http_input
1 parent 5a0c007 commit 57d2042

12 files changed

+9
-77
lines changed

NEWS

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ DOM:
1313
Intl:
1414
. Added IntlDateFormatter::PATTERN constant. (David Carlier)
1515

16+
MBString:
17+
. Long-deprecated INI setting mbstring.http_input has been removed. (Alex Dowad)
18+
1619
Opcache:
1720
. Added large shared segments support for FreeBSD. (David Carlier)
1821

ext/mbstring/mbstring.c

Lines changed: 2 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -738,25 +738,6 @@ static int _php_mb_ini_mbstring_http_input_set(const char *new_value, size_t new
738738
return SUCCESS;
739739
}
740740

741-
/* {{{ static PHP_INI_MH(OnUpdate_mbstring_http_input) */
742-
static PHP_INI_MH(OnUpdate_mbstring_http_input)
743-
{
744-
if (new_value) {
745-
php_error_docref("ref.mbstring", E_DEPRECATED, "Use of mbstring.http_input is deprecated");
746-
}
747-
748-
if (!new_value || !ZSTR_LEN(new_value)) {
749-
const char *encoding = php_get_input_encoding();
750-
MBSTRG(http_input_set) = 0;
751-
_php_mb_ini_mbstring_http_input_set(encoding, strlen(encoding));
752-
return SUCCESS;
753-
}
754-
755-
MBSTRG(http_input_set) = 1;
756-
return _php_mb_ini_mbstring_http_input_set(ZSTR_VAL(new_value), ZSTR_LEN(new_value));
757-
}
758-
/* }}} */
759-
760741
static int _php_mb_ini_mbstring_http_output_set(const char *new_value) {
761742
const mbfl_encoding *encoding = php_mb_get_encoding_or_pass(new_value);
762743
if (!encoding) {
@@ -930,7 +911,6 @@ static PHP_INI_MH(OnUpdate_mbstring_http_output_conv_mimetypes)
930911
PHP_INI_BEGIN()
931912
PHP_INI_ENTRY("mbstring.language", "neutral", PHP_INI_ALL, OnUpdate_mbstring_language)
932913
PHP_INI_ENTRY("mbstring.detect_order", NULL, PHP_INI_ALL, OnUpdate_mbstring_detect_order)
933-
PHP_INI_ENTRY("mbstring.http_input", NULL, PHP_INI_ALL, OnUpdate_mbstring_http_input)
934914
PHP_INI_ENTRY("mbstring.http_output", NULL, PHP_INI_ALL, OnUpdate_mbstring_http_output)
935915
STD_PHP_INI_ENTRY("mbstring.internal_encoding", NULL, PHP_INI_ALL, OnUpdate_mbstring_internal_encoding, internal_encoding_name, zend_mbstring_globals, mbstring_globals)
936916
PHP_INI_ENTRY("mbstring.substitute_character", NULL, PHP_INI_ALL, OnUpdate_mbstring_substitute_character)
@@ -967,10 +947,8 @@ static void mbstring_internal_encoding_changed_hook(void) {
967947
_php_mb_ini_mbstring_http_output_set(encoding);
968948
}
969949

970-
if (!MBSTRG(http_input_set)) {
971-
const char *encoding = php_get_input_encoding();
972-
_php_mb_ini_mbstring_http_input_set(encoding, strlen(encoding));
973-
}
950+
const char *encoding = php_get_input_encoding();
951+
_php_mb_ini_mbstring_http_input_set(encoding, strlen(encoding));
974952
}
975953

976954
/* {{{ module global initialize handler */
@@ -1015,7 +993,6 @@ ZEND_TSRMLS_CACHE_UPDATE();
1015993
mbstring_globals->last_used_encoding = NULL;
1016994
mbstring_globals->internal_encoding_set = 0;
1017995
mbstring_globals->http_output_set = 0;
1018-
mbstring_globals->http_input_set = 0;
1019996
mbstring_globals->all_encodings_list = NULL;
1020997
}
1021998
/* }}} */
@@ -1152,7 +1129,6 @@ PHP_RSHUTDOWN_FUNCTION(mbstring)
11521129

11531130
MBSTRG(internal_encoding_set) = 0;
11541131
MBSTRG(http_output_set) = 0;
1155-
MBSTRG(http_input_set) = 0;
11561132

11571133
MBSTRG(outconv_enabled) = false;
11581134
MBSTRG(outconv_state) = 0;

ext/mbstring/mbstring.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,6 @@ ZEND_BEGIN_MODULE_GLOBALS(mbstring)
109109
/* Whether an explicit internal_encoding / http_output / http_input encoding was set. */
110110
bool internal_encoding_set;
111111
bool http_output_set;
112-
bool http_input_set;
113112
#ifdef HAVE_MBREGEX
114113
zend_long regex_retry_limit;
115114
#endif

ext/mbstring/tests/ini_encoding.phpt

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ internal_encoding=
99
input_encoding=
1010
output_encoding=
1111
mbstring.internal_encoding=Shift_JIS
12-
mbstring.http_input=Shift_JIS
1312
mbstring.http_output=Shift_JIS
1413
--FILE--
1514
<?php
@@ -21,7 +20,6 @@ var_dump(ini_get('output_encoding'));
2120

2221
var_dump(ini_get('mbstring.internal_encoding'));
2322
var_dump(mb_internal_encoding());
24-
var_dump(ini_get('mbstring.http_input'));
2523
var_dump(ini_get('mbstring.http_output'));
2624

2725
echo "Setting INI\n";
@@ -30,7 +28,6 @@ var_dump(ini_set('internal_encoding', 'UTF-8'));
3028
var_dump(ini_set('input_encoding', 'UTF-8'));
3129
var_dump(ini_set('output_encoding', 'UTF-8'));
3230
var_dump(ini_set('mbstring.internal_encoding', 'UTF-8'));
33-
var_dump(ini_set('mbstring.http_input', 'UTF-8'));
3431
var_dump(ini_set('mbstring.http_output', 'UTF-8'));
3532

3633
echo "Getting INI\n";
@@ -41,7 +38,6 @@ var_dump(ini_get('output_encoding'));
4138

4239
var_dump(ini_get('mbstring.internal_encoding'));
4340
var_dump(mb_internal_encoding());
44-
var_dump(ini_get('mbstring.http_input'));
4541
var_dump(ini_get('mbstring.http_output'));
4642
?>
4743
--EXPECT--
@@ -53,15 +49,13 @@ string(0) ""
5349
string(9) "Shift_JIS"
5450
string(4) "SJIS"
5551
string(9) "Shift_JIS"
56-
string(9) "Shift_JIS"
5752
Setting INI
5853
string(9) "Shift_JIS"
5954
string(0) ""
6055
string(0) ""
6156
string(0) ""
6257
string(9) "Shift_JIS"
6358
string(9) "Shift_JIS"
64-
string(9) "Shift_JIS"
6559
Getting INI
6660
string(5) "UTF-8"
6761
string(5) "UTF-8"
@@ -70,4 +64,3 @@ string(5) "UTF-8"
7064
string(5) "UTF-8"
7165
string(5) "UTF-8"
7266
string(5) "UTF-8"
73-
string(5) "UTF-8"

ext/mbstring/tests/ini_encoding2.phpt

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ internal_encoding=EUC-JP
99
input_encoding=
1010
output_encoding=
1111
mbstring.internal_encoding=
12-
mbstring.http_input=
1312
mbstring.http_output=
1413
--FILE--
1514
<?php
@@ -21,7 +20,6 @@ var_dump(ini_get('output_encoding'));
2120

2221
var_dump(ini_get('mbstring.internal_encoding'));
2322
var_dump(mb_internal_encoding());
24-
var_dump(ini_get('mbstring.http_input'));
2523
var_dump(ini_get('mbstring.http_output'));
2624

2725
echo "Setting INI\n";
@@ -30,7 +28,6 @@ var_dump(ini_set('internal_encoding', 'UTF-8'));
3028
var_dump(ini_set('input_encoding', 'UTF-8'));
3129
var_dump(ini_set('output_encoding', 'UTF-8'));
3230
var_dump(ini_set('mbstring.internal_encoding', 'UTF-8'));
33-
var_dump(ini_set('mbstring.http_input', 'UTF-8'));
3431
var_dump(ini_set('mbstring.http_output', 'UTF-8'));
3532

3633
echo "Getting INI\n";
@@ -41,7 +38,6 @@ var_dump(ini_get('output_encoding'));
4138

4239
var_dump(ini_get('mbstring.internal_encoding'));
4340
var_dump(mb_internal_encoding());
44-
var_dump(ini_get('mbstring.http_input'));
4541
var_dump(ini_get('mbstring.http_output'));
4642
?>
4743
--EXPECT--
@@ -53,15 +49,13 @@ string(0) ""
5349
string(0) ""
5450
string(6) "EUC-JP"
5551
string(0) ""
56-
string(0) ""
5752
Setting INI
5853
string(0) ""
5954
string(6) "EUC-JP"
6055
string(0) ""
6156
string(0) ""
6257
string(0) ""
6358
string(0) ""
64-
string(0) ""
6559
Getting INI
6660
string(5) "UTF-8"
6761
string(5) "UTF-8"
@@ -70,4 +64,3 @@ string(5) "UTF-8"
7064
string(5) "UTF-8"
7165
string(5) "UTF-8"
7266
string(5) "UTF-8"
73-
string(5) "UTF-8"

ext/mbstring/tests/ini_mbstring_invalid.phpt

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ mbstring
66
mbstring.language=UNKNOWN_LANGUAGE
77
mbstring.internal_encoding=UNKNOWN_ENCODING
88
mbstring.detect_order=UTF-8,DETECT_ORDER,ASCII
9-
mbstring.http_input=UTF-8,HTTP_INPUT,ASCII
109
mbstring.http_output=HTTP_OUTPUT
1110
mbstring.http_output_conv_mimetypes=UNKNOWN_MIME_TYPE_OUTPUT
1211
mbstring.substitute_character=U+3000,NON_EXISTING_CHARACTER,JIS+7E7E
@@ -19,10 +18,6 @@ mbstring.strict_detection=BOOL_STRICT_DETECTION
1918
--EXPECT--
2019
Warning: PHP Startup: INI setting contains invalid encoding "DETECT_ORDER" in Unknown on line 0
2120

22-
Deprecated: PHP Startup: Use of mbstring.http_input is deprecated in Unknown on line 0
23-
24-
Warning: PHP Startup: INI setting contains invalid encoding "HTTP_INPUT" in Unknown on line 0
25-
2621
Deprecated: PHP Startup: Use of mbstring.http_output is deprecated in Unknown on line 0
2722

2823
Deprecated: PHP Startup: Use of mbstring.internal_encoding is deprecated in Unknown on line 0

ext/mbstring/tests/mb_get_info.phpt

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ mbstring
66
mbstring.encoding_translation=1
77
mbstring.language=Korean
88
mbstring.internal_encoding=UTF-8
9-
mbstring.http_input=ISO-8859-1
109
mbstring.http_output=ISO-8859-15
1110
mbstring.http_output_conv_mimetypes=abc
1211
mbstring.detect_order=UTF-8,ISO-8859-15,ISO-8859-1,ASCII
@@ -23,16 +22,14 @@ foreach (array_keys($result) as $key) {
2322
}
2423
?>
2524
--EXPECT--
26-
Deprecated: PHP Startup: Use of mbstring.http_input is deprecated in Unknown on line 0
27-
2825
Deprecated: PHP Startup: Use of mbstring.http_output is deprecated in Unknown on line 0
2926

3027
Deprecated: PHP Startup: Use of mbstring.internal_encoding is deprecated in Unknown on line 0
3128
array(13) {
3229
["internal_encoding"]=>
3330
string(5) "UTF-8"
3431
["http_input"]=>
35-
string(10) "ISO-8859-1"
32+
string(5) "UTF-8"
3633
["http_output"]=>
3734
string(11) "ISO-8859-15"
3835
["http_output_conv_mimetypes"]=>
@@ -67,8 +64,8 @@ array(13) {
6764
}
6865
string(5) "UTF-8"
6966
string(5) "UTF-8"
70-
string(10) "ISO-8859-1"
71-
string(10) "ISO-8859-1"
67+
string(5) "UTF-8"
68+
string(5) "UTF-8"
7269
string(11) "ISO-8859-15"
7370
string(11) "ISO-8859-15"
7471
string(3) "abc"

ext/mbstring/tests/mb_http_input_001.phpt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ var_dump(mb_http_input('L'));
1010
var_dump(mb_http_input('l'));
1111
?>
1212
--EXPECT--
13-
Warning: PHP Startup: INI setting contains invalid encoding "-1" in Unknown on line 0
14-
1513
Warning: PHP Startup: INI setting contains invalid encoding "-1" in Unknown on line 0
1614
bool(false)
1715
bool(false)

ext/mbstring/tests/mb_internal_encoding_basic2.phpt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ var_dump(ini_get('default_charset'));
1919
var_dump(ini_get('input_encoding'));
2020
var_dump(ini_get('output_encoding'));
2121
var_dump(ini_get('internal_encoding'));
22-
var_dump(ini_get('mbstring.http_input'));
2322
var_dump(ini_get('mbstring.http_output'));
2423
var_dump(ini_get('mbstring.internal_encoding'));
2524

@@ -37,7 +36,6 @@ string(10) "ISO-8859-1"
3736
string(10) "ISO-8859-1"
3837
string(0) ""
3938
string(0) ""
40-
string(0) ""
4139
string(10) "ISO-8859-1"
4240
bool(true)
4341
string(5) "UTF-8"

ext/mbstring/tests/mb_parse_str_multi.phpt

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,9 @@ mb_parse_str() with multiple candidate encodings
33
--EXTENSIONS--
44
mbstring
55
--INI--
6-
mbstring.http_input=UTF-8,SJIS,EUC-JP,ISO-8859-1,ISO-2022-JP
6+
input_encoding=UTF-8,SJIS,EUC-JP,ISO-8859-1,ISO-2022-JP
77
--FILE--
88
<?php
9-
// The encoding of the input strings will be guessed, from the list specified
10-
// via mbstring.http_input
11-
// All of them will be converted to UTF-8
129
mb_internal_encoding('UTF-8');
1310

1411
$queries = array(
@@ -35,7 +32,6 @@ foreach ($queries as $query) {
3532

3633
?>
3734
--EXPECTF--
38-
Deprecated: PHP Startup: Use of mbstring.http_input is deprecated in %s on line %d
3935
Query: e38386e382b9e383883d616263
4036
e38386e382b9e38388=>616263
4137
Query: 82a082a282a43d9356

php.ini-development

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1648,14 +1648,6 @@ zend.assertions = 1
16481648
; The precedence is: default_charset < internal_encoding < iconv.internal_encoding
16491649
;mbstring.internal_encoding =
16501650

1651-
; Use of this INI entry is deprecated, use global input_encoding instead.
1652-
; http input encoding.
1653-
; mbstring.encoding_translation = On is needed to use this setting.
1654-
; If empty, default_charset or input_encoding or mbstring.input is used.
1655-
; The precedence is: default_charset < input_encoding < mbstring.http_input
1656-
; https://php.net/mbstring.http-input
1657-
;mbstring.http_input =
1658-
16591651
; Use of this INI entry is deprecated, use global output_encoding instead.
16601652
; http output encoding.
16611653
; mb_output_handler must be registered as output buffer to function.

php.ini-production

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1650,14 +1650,6 @@ zend.assertions = -1
16501650
; The precedence is: default_charset < internal_encoding < iconv.internal_encoding
16511651
;mbstring.internal_encoding =
16521652

1653-
; Use of this INI entry is deprecated, use global input_encoding instead.
1654-
; http input encoding.
1655-
; mbstring.encoding_translation = On is needed to use this setting.
1656-
; If empty, default_charset or input_encoding or mbstring.input is used.
1657-
; The precedence is: default_charset < input_encoding < mbstring.http_input
1658-
; https://php.net/mbstring.http-input
1659-
;mbstring.http_input =
1660-
16611653
; Use of this INI entry is deprecated, use global output_encoding instead.
16621654
; http output encoding.
16631655
; mb_output_handler must be registered as output buffer to function.

0 commit comments

Comments
 (0)