Resolved PHP 7 : BETA17 : Cannot break 2 levels

Discussion in '[bd] Widget Framework' started by semprot, Nov 11, 2016.

  1. semprot

    semprot New Member

    #1 , Nov 11, 2016
    Last edited: Nov 11, 2016
    I tried to install BETA17, and i still get PHP Fatal error: Cannot 'break' 2 levels.
    I use PHP 7 in my server.

    Strange, it works in my localhost (PHP 5).

    Same XF version : 1.5.11
    Code:
    /library/WidgetFramework/Helper/Index.php
    I think the "break 2" is wrong, because there is only 1 foreach, and it should be replaced by "break".

    PHP:
    public static function setNavtabSelected(array &$tabs, array &$extraTabs)
        {
            
    $selected false;

            if (!empty(
    $tabs['forums']))
            {
                
    // found "Forums" navtab, select it now
                
    $tabs['forums']['selected'] = true;
                
    $selected true;
            }
            else
            {
                
    // try to select the first one from $tabs
                
    foreach ($tabs as &$tab)
                {
                    
    $tab['selected'] = true;
                    
    $selected true;
                    break;
                }

                if (!
    $selected)
                {
                    
    // still not selected!?
                    // try with $extraTabs now
                    
    foreach ($extraTabs as &$tabs)
                    {
                        
    $tab['selected'] = true;
                        
    $selected true;
                        break 
    2;// <<<<<<<<<<<<<<<<<<<
                    
    }
                }
            }

            return 
    $selected;
        }
     
  2. xfrocks

    xfrocks XenForo rocks!
    Staff Member

    Interesting find. Thank you.
     
    semprot likes this.
    1. semprot

      semprot New Member

      semprot @xfrocks I think it's because PHP 7 is more strict than PHP 5.
      After replacing "break 2" with "break", everything works fine.
      No other error since installing 2 days ago :)
       
  3. xfrocks

    xfrocks XenForo rocks!
    Staff Member

    Are you sure you are on BETA17, we have just went through our php7 clean up and this appeared to be fixed quite a while ago.
     
    semprot likes this.
    1. semprot

      semprot New Member

      semprot @xfrocks ok it seems i downloaded beta17 and uploaded older version. it was my mistake :D
       
      xfrocks likes this.
      1
Loading...