Php 如何用简单方法编写此数组?

Php 如何用简单方法编写此数组?,php,loops,foreach,Php,Loops,Foreach,我有一个函数,可以做很多计算 $arrlight和$arrright是两个不同的数组。我在这里所做的是将这两种方法结合起来,为我当前的应用程序生成一个输出。我所做的是一个简单的方法,它占用了大量的空间和时间。我想要的是,如果有人能把这段代码缩短几行(我知道,如果它在循环中的话)。但是我自己无法进入,所以我把它放在这里征求你的意见 $arrleft = explode(',' , $data1); $arrright = explode(',' , $data2); if(isset($dat

我有一个函数,可以做很多计算

$arrlight
$arrright
是两个不同的数组。我在这里所做的是将这两种方法结合起来,为我当前的应用程序生成一个输出。我所做的是一个简单的方法,它占用了大量的空间和时间。我想要的是,如果有人能把这段代码缩短几行(我知道,如果它在循环中的话)。但是我自己无法进入,所以我把它放在这里征求你的意见

  $arrleft = explode(',' , $data1);
$arrright = explode(',' , $data2); if(isset($data1,$data2)){if(isset($arrleft[0],$arrright[0],$arrleft[1],$arrright[1],$arrleft[2],$arrright[2],$arrleft[3],$arrright[3],$arrleft[4],$arrright[4]))
     { $totalnumber = ($valueset+1)//calculate total number of variables set + 1 here $valueset = 4 so $total number (4+1)=5
       $value = (0, 0, $arrleft[0]);
       $value1 = (0, 1, $arrright[0]);
       $value2 = (1, 0, $arrleft[1]);
       $value3 = (1, 1, $arrright[1]);
       $value4 = (2, 0, $arrleft[2]);
       $value5 = (2, 1, $arrright[2]);
       $value6 = (3, 0, $arrleft[3]);
       $value7 = (3, 1, $arrright[3]);
       $value8 = (4, 0, $arrleft[4]);
       $value9 = (4, 1, $arrright[4]);
     }else if(isset($arrleft[0],$arrright[0],$arrleft[1],$arrright[1],$arrleft[2],$arrright[2],$arrleft[3],$arrright[3])){ 
       $totalnumber = ($valueset+1)//calculate total number of variables set + 1 here $valueset = 3 so $total number (3+1)=4
       $value = (0, 0, $arrleft[0]);
       $value1 = (0, 1, $arrright[0]);
       $value2 = (1, 0, $arrleft[1]);
       $value3 = (1, 1, $arrright[1]);
       $value4 = (2, 0, $arrleft[2]);
       $value5 = (2, 1, $arrright[2]);
       $value6 = (3, 0, $arrleft[3]);
       $value7 = (3, 1, $arrright[3]);
     }else if(isset($arrleft[0],$arrright[0],$arrleft[1],$arrright[1],$arrleft[2],$arrright[2])){
        $totalnumber = ($valueset+1)//calculate total number of variables set + 1 here $valueset = 2 so $total number (2+1)=3
       $value = (0, 0, $arrleft[0]);
       $value1 = (0, 1, $arrright[0]);
       $value2 = (1, 0, $arrleft[1]);
       $value3 = (1, 1, $arrright[1]);
       $value4 = (2, 0, $arrleft[2]);
       $value5 = (2, 1, $arrright[2]);
     }else{}
}

由于空间问题,我在这里减少了很多行。

也许这可以帮助您

$arrleft = explode(',' , $data1); $arrright = explode(',' , $data2); $countleft = count($arrleft); $countright = count($arrright); if(isset($data1, $data2) && $countleft == $countright) { // i think that you want from these arrays to have same size $totalnumber = $countleft; // also $countright $values = array(); // you might save these values into array $j = 0; for($i = 0; $i < $totalnumber; $i++) { // i am not sure, but don't you want make from these values an array? $values[$j] = array($i, 0, $arrleft[$i]); $values[$j + 1] = array($i, 1, $arrright[$i]); $j += 2; } } $arrleft=分解(“,”,$data1); $arrright=explode(“,”,$data2); $countleft=计数($arrleft); $countright=计数($arright); 如果(isset($data1,$data2)&&$countleft==$countright) {//我认为您希望这些数组具有相同的大小 $totalnumber=$countleft;//也是$countright $values=array();//您可以将这些值保存到数组中 $j=0; 对于($i=0;$i<$totalnumber;$i++) {//我不确定,但是您不想从这些值生成一个数组吗? $values[$j]=数组($i,0,$arrlefit[$i]); $values[$j+1]=数组($i,1,$arrright[$i]); $j+=2; } }
“我不是说实际的代码,而是给你一个实际代码的说明,这样你就会得到一个清晰的图片。”——图片一点也不清楚。事实上,您发布的代码(如所写)没有任何效果。你只是一次又一次地重新分配
$value
。请告诉我们您实际想做什么。对不起,$value实际上是不同的变量。这些变量的实际名称不同。由于公司政策,我不能提及相同的代码。因此我重新起草了它。