PHP创建托盘计数器
我试图创建一个PHP循环,以获取一个起始int变量,并根据每个托盘上的wigets数量递增,从而获得该托盘的结束变量。然后以1+上一个托盘的结束编号开始下一个托盘。直到达到总数量。我尝试了几个不同的循环,但都没有得到结果。这是最新的。它将给我托盘的数量,但它保持每个托盘相同的开始编号PHP创建托盘计数器,php,Php,我试图创建一个PHP循环,以获取一个起始int变量,并根据每个托盘上的wigets数量递增,从而获得该托盘的结束变量。然后以1+上一个托盘的结束编号开始下一个托盘。直到达到总数量。我尝试了几个不同的循环,但都没有得到结果。这是最新的。它将给我托盘的数量,但它保持每个托盘相同的开始编号 for( $x = 0; $x <= $num_of_skids; $x++) { $skid_num++; $mfg_end_num = $mfg_begin + $per_skid
for( $x = 0; $x <= $num_of_skids; $x++)
{
$skid_num++;
$mfg_end_num = $mfg_begin + $per_skid - 1;
$mfg_begin_num = $mfg_end_num + 1;
fputs( $fp, "SKID # " . str_pad($skid_num, 2, " ", STR_PAD_RIGHT) . " " . $cst_prefix . $cst_begin . "-" . $cst_prefix . $cst_end . str_pad( " ", 5, " ") . $mfg_prefix . $mfg_begin_num . "-" . $mfg_prefix . $mfg_end_num . "\r\n");
}
对于($x=0;$x您可以-
$mfg_begin_num = $mfg_begin + ($x*$per_skid); // get the 0 based start
$mfg_end_num = $mfg_begin_num + ($per_skid - 1); // subtract 1 due to 0 based loop
成功
for( $x = 0; $x <= $num_of_skids; $x++)
{
$skid_num++;
$mfg_begin_num = $mfg_begin + ($x*$per_skid);
$mfg_end_num = $mfg_begin_num + ($per_skid - 1);
fputs( $fp, "SKID # " . str_pad($skid_num, 2, " ", STR_PAD_RIGHT) . " " . $cst_prefix . $cst_begin . "-" . $cst_prefix . $cst_end . str_pad( " ", 5, " ") . $mfg_prefix . $mfg_begin_num . "-" . $mfg_prefix . $mfg_end_num . "\r\n");
}
您可能想在这里添加$x
如下:$mfg\u end\u num=$mfg\u begin+$per\u slidk-1+$x;
我假设$slidk\u num在循环之前被初始化为0。那么$mfg\u end\u num、$mfg\u begin和$per\u slidk呢?它们在循环之前都被初始化为0吗?$slidk\u num和$mfg\u end\u num在循环之前被设置为0。$mfg\u begin和$per\u slidk被拉离m a DB。是的,它们都在循环之前初始化。这是我想要的结果。100-104/105-109/110-114。我有起始数字和递增数字。这将一直持续到满足数量。这使得$mfg_begin_num从0开始。我需要让$mfg_begin_num从一个预定的数字开始om我正在拉入$mfg_begin变量的DB。当我在其中替换此变量时,它将填充每行的$mfg_begin num,例如:它将显示100-104/100-104/100-104。抱歉,错过了。我已更新了上面的答案。请尝试$mfg_begin_num=$mfg_begin+($x*$per_);
SKID # 1 XXXXXX-XXXXXX X100-X104
SKID # 2 XXXXXX-XXXXXX X105-X109
SKID # 3 XXXXXX-XXXXXX X110-X114