编辑代码

<?php 
//JSRUN引擎2.0,支持多达30种语言在线运行,全仿真在线交互输入输出。 
    $portBinding = 0;
    $value2 = [1,7,11];

    $arrPortBindingLen = count($value2);

    echo "arrPortBindingLen = ".$arrPortBindingLen."\n";

    for($k=0;$k<$arrPortBindingLen;$k++) {
        echo "value2 = ".$value2[$k]."\n";
        $itemValue = $value2[$k];
        if($itemValue>=4 && $itemValue <= 7) {
            $portBinding |= (1 << ($itemValue+4));
        } else if($itemValue>=8 && $itemValue <= 12) {
            $portBinding |= (1 << ($itemValue-4));
        } else {
            $portBinding |= (1 << $itemValue);
        }
    }

    //$tempStr = '"PortBinding":'.$portBinding;
    print_r($portBinding) ;
    echo "\n\n\n";
    $value3 = 2178;
    $arrPortBingding = array();
    for($k=0;$k<12;$k++){
        if(($value3 >> $k) & 1) {
            if($k >=4 && $k <=7) {
                $arrPortBingding[] = $k+4;
            } else if($k >=8 && $k <=12) {
                $arrPortBingding[] = $k-4;
            } else {
                $arrPortBingding[] = $k;
            }
        }
    }

    print_r($arrPortBingding);