Skip to content

Commit 52a9325

Browse files
committed
Remove 'e' modifier for mb_ereg_replace()
This was deprecated in PHP 7.1 through https://wiki.php.net/rfc/deprecate_mb_ereg_replace_eval_option.
1 parent 682b54f commit 52a9325

File tree

4 files changed

+7
-36
lines changed

4 files changed

+7
-36
lines changed

UPGRADING

+3
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,9 @@ PHP 8.0 UPGRADE NOTES
7272
* mbereg_search_getpos() -> mb_ereg_search_getpos()
7373
* mbereg_search_setpos() -> mb_ereg_search_setpos()
7474

75+
. The 'e' modifier for mb_ereg_replace() has been removed.
76+
mb_ereg_replace_callback() should be used instead.
77+
7578
- SPL:
7679
. SplFileObject::fgetss() has been removed.
7780

ext/mbstring/php_mbregex.c

+2-1
Original file line numberDiff line numberDiff line change
@@ -1043,7 +1043,8 @@ static void _php_mb_regex_ereg_replace_exec(INTERNAL_FUNCTION_PARAMETERS, OnigOp
10431043
}
10441044
}
10451045
if (eval && !is_callable) {
1046-
php_error_docref(NULL, E_DEPRECATED, "The 'e' option is deprecated, use mb_ereg_replace_callback instead");
1046+
php_error_docref(NULL, E_WARNING, "The 'e' option is no longer supported, use mb_ereg_replace_callback instead");
1047+
RETURN_FALSE;
10471048
}
10481049
if (Z_TYPE_P(arg_pattern_zval) == IS_STRING) {
10491050
arg_pattern = Z_STRVAL_P(arg_pattern_zval);

ext/mbstring/tests/bug43301.phpt

-33
This file was deleted.

ext/mbstring/tests/bug72164.phpt

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ $var8 = mb_ereg_replace($var2,$var3,$var3,$var0);
1414
var_dump($var8);
1515
?>
1616
--EXPECTF--
17-
Deprecated: mb_ereg_replace(): The 'e' option is deprecated, use mb_ereg_replace_callback instead in %s%ebug72164.php on line %d
18-
string(0) ""
17+
Warning: mb_ereg_replace(): The 'e' option is no longer supported, use mb_ereg_replace_callback instead in %s on line %d
18+
bool(false)

0 commit comments

Comments
 (0)