WPJAM虽好,但是PHP8.1很多报错,盘点修复
//报错文件:wpjam-admin.php
//错误提示:Optional parameter $parent declared before required parameter $rendering is implicitly treated as a required parameter
//行数:214
//修复方式:增加参数默认空字符串
//原
function wpjam_parse_admin_menu($menu, $slug, $parent='', $rendering)
//改:
function wpjam_parse_admin_menu($menu, $slug, $parent='', $rendering='')
//报错文件:class-wpjam-api.php
//错误提示:strtoupper(): Passing null to parameter #1 ($string) of type string is deprecated
//行数:644
//修复方式:增加默认值避免空值报错
//原
$method = strtoupper($this->method) ?: 'GET';
//改:
$method = strtoupper($this->method ?? 'GET');
//报错文件:wpjam-utils.php
//错误提示:str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated
//行数:1262
//修复方式:增加判断,定义空值为空字符串
//原
function wpjam_get_filter_name($name='', $type=''){
$filter = str_replace('-', '_', $name);
$filter = str_replace('wpjam_', '', $filter);
return 'wpjam_'.$filter.'_'.$type;
}
//改:
function wpjam_get_filter_name($name = '', $type = ''){
if ($name === null) {
$name = ''; // 设置一个默认值
}
if ($type === null) {
$type = ''; // 设置一个默认值
}
$filter = str_replace('-', '_', $name);
$filter = str_replace('wpjam_', '', $filter);
return 'wpjam_' . $filter . '_' . $type;
}
//报错文件:class-wpjam-register.php
//错误提示:preg_split(): Passing null to parameter #2 ($subject) of type string is deprecated
//行数:411
//修复方式:排查过后,对$value增加非空判断
//原
private function sanitize_value($value){
if($this->sanitize_callback){
if(is_callable($this->sanitize_callback)){
return call_user_func($this->sanitize_callback, $value);
}
}else{
if($this->type == 'int' && !is_null($value)){
return (int)$value;
}
}
return $value;
}
//改:
protected function sanitize_value($value){
if($this->sanitize_callback && is_callable($this->sanitize_callback)){
if (!is_null($value)) {
return call_user_func($this->sanitize_callback, $value);
}
}
return $value;
}
本文作者:ZKCOI
文章名称:WPJAM多个报错临时修复
文章链接:https://www.zkcoi.com/365up/program/2779.html
本站资源仅供个人学习和交流,如若转载,请注明出处,详见《免责声明》。
微信扫一扫
支付宝扫一扫
