微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

请注意,尝试访问类型为null的wordpress插件的值的数组偏移量

如何解决请注意,尝试访问类型为null的wordpress插件的值的数组偏移量

在我在某些插件中发现此通知之后,我必须将我的网站更新为最新版本的PHP 7.4

**>注意:尝试在类型为null的值中访问数组偏移量

C:\ projets \ htdocs \ mapsport \ wp-content \ plugins \ ekit-megamenu \ library \ scss \ scss.inc.PHP 在1753行**

protected function sortArgs($prototype,$args) {
    $keyArgs = array();
    $posArgs = array();

    foreach ($args as $arg) {
        list($key,$value) = $arg;
        $key = $key[1]; // line 1753
        if (empty($key)) {
            $posArgs[] = $value;
        } else {
            $keyArgs[$key] = $value;
        }
    }

    if (!isset($prototype)) return $posArgs;

    $finalArgs = array();
    foreach ($prototype as $i => $names) {
        if (isset($posArgs[$i])) {
            $finalArgs[] = $posArgs[$i];
            continue;
        }

        $set = false;
        foreach ((array)$names as $name) {
            if (isset($keyArgs[$name])) {
                $finalArgs[] = $keyArgs[$name];
                $set = true;
                break;
            }
        }

        if (!$set) {
            $finalArgs[] = null;
        }
    }

    return $finalArgs;
}

如何更改代码而不更改我的PHP版本?

添加var_dump($ args)之后的结果;在@Ro Achterberg建议的foreach之前

array(2){[0] => array(3){[0] => NULL [1] => array(2){[0] => 字符串(3)“ var” [1] =>字符串(23)“ ekit-menu-simple__white”} [2] => bool(false)} [1] => array(3){[0] => NULL [1] => array(3){[0] => 字符串(6)“数字” [1] =>字符串(3)“ 6.5” [2] =>字符串(1)“%”} [2] => bool(false)}}

解决方法

1752行上,$key的值为NULL。它没有任何价值。所以,您可以尝试$key = isset( $key[1] ) ? $key[1] : '';吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。