将 create_function() 替换为 PHP8 的其他内容

Ala*_*Das 4 php wordpress create-function php-8

所以我有一个以前工作正常的插件,但几天后它向我抛出一个错误:

PHP 致命错误:未捕获错误:调用未定义的函数 create_function()

经过一番搜索,我发现这是因为create_function()PHP 8 中已弃用。

现在导致问题的确切行是这样的:

$callback_2 = create_function('$matches', 'return "[" . str_replace("|", "", $matches[1]) . "]";');
Run Code Online (Sandbox Code Playgroud)

我尝试将其更改为:

$callback_2 = create_function('$matches', 'return "[" . str_replace("|", "", $matches[1]) . "]";');
Run Code Online (Sandbox Code Playgroud)

但这不起作用。因此,如果有人能指出我正确的方向,而且我对 PHP 很陌生,那就太好了。

小智 12

尝试

$callback_2 = function($matches) {
    return "[" . str_replace("|", "", $matches[1]) . "]";
};
Run Code Online (Sandbox Code Playgroud)