PHP中断问题5.4版


PHP Break issue version 5.4

尝试打开我的网站时出现以下错误:

致命错误:...........

不再支持带有非常量操作数的'break'操作符

我认为这一定是一个PHP版本错误,但我似乎不能找出什么是错误的在下面的代码

$search_code = '';
        $b = 2;
        foreach ($categories as $category) {
            switch($category) {
                case 1:
                $search_code = 'bullion';
                    break $b;
                case 2:
                    $search_code = 'grain';
                    break $b;
                case 3:
                    $search_code = 'sheet';
                    break $b;
                case 18:
                    $search_code = 'tube';
                    break $b;
                case 29:
                    $search_code = 'wire';
                    break $b;
                case 50:
                    $search_code = 'solders';
                    break $b;
                case 65:
                    $search_code = 'chain';
                    break $b;
                case 177:
                    $search_code = 'findings';
                    break $b;
                case 416:
                    $search_code = 'rings';
                    break $b;
                case 417:
                    $search_code = 'weddingrings';
                    break $b;
                case 434:
                    $search_code = 'castingrings';
                    break $b;
                case 455:
                    $search_code = 'stringing_craft';
                    break $b;
                case 233:
                case 234:
                case 252:
                case 253:
                case 286:
                case 371:
                case 372:
                case 377:
                case 386:
                case 460:
                    $search_code = 'beads_1';
                case 307:
                    $search_code = 'beads';
                    break $b;
                case 403:
                case 444:
                    $search_code = 'ringmounts';
                    break $b;
                case 450:
                    $search_code = 'ringshanks';
                    break $b;
                case 483:
                    $search_code = 'tools';
                    break $b;
                case 527:
                    $search_code = 'jewellery';
                    break $b;
                case 511:
                    $search_code = 'boxes_packaging';
                    break $b;
            }
        }

http://php.net/manual/en/control-structures.break.php

"5.4.0删除了传入变量的能力(例如,$num = 2;打破$num;)作为数值参数。"

只要将所有的break $b替换为break 2就可以了。