foreach($a as $k=>$v){ print_r($newarr); echo $a[$k]['5'].'<br />';}
Array( [0] => Array ( [lotno] => 3206 [count] => 12 ) [1] => Array ( [lotno] => 3207 [count] => 63 ) [2] => Array ( [lotno] => 3218 [count] => 180 ))120Array( [0] => Array ( [lotno] => 3206 [count] => 12 ) [1] => Array ( [lotno] => 3207 [count] => 63 ) [2] => Array ( [lotno] => 3218 [count] => 180 ))135
45って意味が分かりませんハードコードされているのか、それとも計算されているのか?最終結果を投稿してください。
分かりました。 45 = 120-12-63。
結果は次のようになります:
対応する項目
120 3206*12 3207*63 3208*45
135 3208*135(135 = 180-45(前の結果セット))
これは、
$ar = array ( array( 'lotno' => 3206, 'count' => 12 ), array( 'lotno' => 3207, 'count' => 63 ), array( 'lotno' => 3218, 'count' => 180 ),);$s = '';$n = 0;foreach($ar as $r) { if($n + $r['count'] > 120) { echo $s . $r['lotno'] . '*' . (120-$n) ."\n"; echo $r['lotno'] . '*' . ($n = $r['count'] - (120-$n)) ."\n"; $s = ''; }else { $s .= "$r[lotno]*$r[count] "; $n += $r['count']; if($n == 120) { echo "$s\n"; $s = ''; $n = 0; } }}3206* 12 を意味します3207*63 3218*45
れーれー