我的插件wp-lightbox evolution显示错误
不推荐使用:preg_replace():不推荐使用/ e修饰符 改为preg_replace_callback
当我用preg_replace_callback
替换它时,我收到错误:
警告:preg_replace_callback():需要参数2, ' stripslashes(strstr(" \ 1 \ 3"," class =")?" \ 0":"" )',成为有效的回调
任何帮助都将不胜感激。
此致
答案 0 :(得分:0)
preg_replace
修饰符的 /e
用于接受PHP代码作为字符串。
preg_replace_callback
接受callable。 preg_replace_callback
应接受匹配数组并返回要用作替换字符串的函数。
如果您不在其他地方使用此代码,则使用匿名函数是有意义的,如下所示:
preg_replace_callback(YOUR_PATTERN_HERE, function ($matches) {
return stripslashes(
strstr($matches[1] . $matches[3], "class=")
? $matches[0]
: "");
}, YOUR_STRING_TO_BE_CHANGED_HERE);
有关详细信息,请参阅问题Replace preg_replace() e modifier with preg_replace_callback。