我有一个使用create_function()
的WordPress设置功能,但是当我将服务器更新为PHP7.2时,它说该功能已被弃用。
我不知道该用什么替代方法。
代码
if ( isset( $section['desc'] ) && ! empty( $section['desc'] ) ) {
$section['desc'] = '<div class="inside">' . $section['desc'] . '</div>';
$callback = create_function( '', 'echo "' . str_replace( '"', '\"', $section['desc'] ) . '";' );
} elseif ( isset( $section['callback'] ) ) {
$callback = $section['callback'];
} else {
$callback = null;
}
答案 0 :(得分:3)
只需创建一个匿名函数以用作回调:
您的行:
$callback = create_function( '', 'echo "' . str_replace( '"', '\"', $section['desc'] ) . '";' );
可以替换为:
$callback = function() use($section) { echo str_replace ('"', '\"', $section['desc']); };