最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

php - Deprecated: Function create_function() is deprecated

programmeradmin0浏览0评论
Closed. This question is off-topic. It is not currently accepting answers.

Your question should be specific to WordPress. Generic PHP/JS/SQL/HTML/CSS questions might be better asked at Stack Overflow or another appropriate Stack Exchange network site. Third-party plugins and themes are off-topic for this site; they are better asked about at their developers' support routes.

Closed 4 years ago.

Improve this question

i have a deprecated function in my plugin code :

static function vksort(&$arr, $valuekey) {
    $valuekey = sustr::preg_filter('A-Za-z0-9 ', $valuekey);
    uasort($arr, create_function('$a,$b', 'return strcasecmp($a["'.$valuekey.'"], $b["'.$valuekey.'"]);'));
}

how i can change the create_function to function.

Closed. This question is off-topic. It is not currently accepting answers.

Your question should be specific to WordPress. Generic PHP/JS/SQL/HTML/CSS questions might be better asked at Stack Overflow or another appropriate Stack Exchange network site. Third-party plugins and themes are off-topic for this site; they are better asked about at their developers' support routes.

Closed 4 years ago.

Improve this question

i have a deprecated function in my plugin code :

static function vksort(&$arr, $valuekey) {
    $valuekey = sustr::preg_filter('A-Za-z0-9 ', $valuekey);
    uasort($arr, create_function('$a,$b', 'return strcasecmp($a["'.$valuekey.'"], $b["'.$valuekey.'"]);'));
}

how i can change the create_function to function.

Share Improve this question edited Feb 4, 2021 at 13:58 fuxia 107k38 gold badges255 silver badges459 bronze badges asked Feb 4, 2021 at 13:08 Ziad El KhomssiZiad El Khomssi 11 silver badge2 bronze badges 1
  • 3rd party plugin dev support is off topic on this stack, you should ask the Ultimate SEO plugin support – Tom J Nowell Commented Feb 4, 2021 at 15:04
Add a comment  | 

1 Answer 1

Reset to default 2

Your server runs with a PHP version that doesn't support create_function.

From the PHP manual about create function

Warning This function has been DEPRECATED as of PHP 7.2.0, and REMOVED as of PHP 8.0.0. Relying on this function is highly discouraged.

If you are using PHP 5.3.0 or newer a native anonymous function should be used instead.

If the plugin is yours I would suggest just that, replace the create_function with anonymous function.

If the plugin is not yours and its a paid plugin, contact the plugin author and alert him of the error, ask him to give you the updated version.

If the plugin is free, you can update the code manually (If you know how), but that can be problematic. When the plugin will be updated your changes will be removed. If this is the only option, make sure to save the plugin with the changes somewhere safe so if the plugin will be updated you will have the previous plugin version with your fix for quick re-apply.

EDIT

Same code but with anonymous function

static function vksort(&$arr, $valuekey) {
    $valuekey = sustr::preg_filter('A-Za-z0-9 ', $valuekey);
    uasort($arr, function ($a, $b) use($valuekey) {
        return strcasecmp($a[$valuekey], $b[$valuekey]);
    });
}
发布评论

评论列表(0)

  1. 暂无评论
ok 不同模板 switch ($forum['model']) { /*case '0': include _include(APP_PATH . 'view/htm/read.htm'); break;*/ default: include _include(theme_load('read', $fid)); break; } } break; case '10': // 主题外链 / thread external link http_location(htmlspecialchars_decode(trim($thread['description']))); break; case '11': // 单页 / single page $attachlist = array(); $imagelist = array(); $thread['filelist'] = array(); $threadlist = NULL; $thread['files'] > 0 and list($attachlist, $imagelist, $thread['filelist']) = well_attach_find_by_tid($tid); $data = data_read_cache($tid); empty($data) and message(-1, lang('data_malformation')); $tidlist = $forum['threads'] ? page_find_by_fid($fid, $page, $pagesize) : NULL; if ($tidlist) { $tidarr = arrlist_values($tidlist, 'tid'); $threadlist = well_thread_find($tidarr, $pagesize); // 按之前tidlist排序 $threadlist = array2_sort_key($threadlist, $tidlist, 'tid'); } $allowpost = forum_access_user($fid, $gid, 'allowpost'); $allowupdate = forum_access_mod($fid, $gid, 'allowupdate'); $allowdelete = forum_access_mod($fid, $gid, 'allowdelete'); $access = array('allowpost' => $allowpost, 'allowupdate' => $allowupdate, 'allowdelete' => $allowdelete); $header['title'] = $thread['subject']; $header['mobile_link'] = $thread['url']; $header['keywords'] = $thread['keyword'] ? $thread['keyword'] : $thread['subject']; $header['description'] = $thread['description'] ? $thread['description'] : $thread['brief']; $_SESSION['fid'] = $fid; if ($ajax) { empty($conf['api_on']) and message(0, lang('closed')); $apilist['header'] = $header; $apilist['extra'] = $extra; $apilist['access'] = $access; $apilist['thread'] = well_thread_safe_info($thread); $apilist['thread_data'] = $data; $apilist['forum'] = $forum; $apilist['imagelist'] = $imagelist; $apilist['filelist'] = $thread['filelist']; $apilist['threadlist'] = $threadlist; message(0, $apilist); } else { include _include(theme_load('single_page', $fid)); } break; default: message(-1, lang('data_malformation')); break; } ?>