dstbtam8732 2016-02-01 23:45
浏览 43
已采纳

如何解决$ unset键上的键变量

I am running a PHP script, and keep getting errors like:

Notice: Undefined variable: key in D:\0-MYBLOG\SERVER-MYBLOG\InstantWP_4.3.1\iwpserver\htdocs\wordpress\wp-content\plugins\sama-author-review\admin\metabox.php on line 310

Line 310 looks like this:

unset( $new['items_review'][$key] );

Here the code:

        if ( $new['items_review'] && is_array( $new['items_review'] )) {

            foreach ( $new['items_review'] as $review ) {

                if ( empty( $review['label'] ) ) {
                    unset( $new['items_review'][$key] );
                } else {
                    $review['value'] = absint( $review['value'] );
                    $review['label'] = esc_attr( $review['label'] );

                    if ( empty( $review['slug'] )) {
                        $review['slug']  = sanitize_title( $review['label'] );
                    } else {
                        $review['slug']  = sanitize_title( $review['slug'] );
                    }
                    $review['style'] = esc_attr( $review['style'] );
                    $items_review[$i] = $review;
                    $i++;
                }
            }   
        }

Is there a quick fix to resolve these error? Really appreciate for any help

Thank you

  • 写回答

1条回答 默认 最新

  • duancuisan2503 2016-02-02 00:11
    关注

    I think I get what the problem is, you have forgotten to put the key parameter on your foreach statement.

    I admit its a bit of a guess as I have no idea what is in $new but it seams a logical possibility.

    if ( $new['items_review'] && is_array( $new['items_review'] )) {
    
    //    foreach ( $new['items_review'] as $review ) {
    // replace foreach with this line
    
        foreach ( $new['items_review'] as $key => $review ) {
    
            if ( empty( $review['label'] ) ) {
                unset( $new['items_review'][$key] );
            } else {
                $review['value'] = absint( $review['value'] );
                $review['label'] = esc_attr( $review['label'] );
                if ( empty( $review['slug'] )) {
                    $review['slug']  = sanitize_title( $review['label'] );
                } else {
                    $review['slug']  = sanitize_title( $review['slug'] );
                }
                $review['style'] = esc_attr( $review['style'] );
                $items_review[$i] = $review;
                $i++;
            }
        }   
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输