Распределить значение массива в столбце таблицы

У меня три столбца с ограничением определенного процента от total.i хотите распределить массив значений до трех столбцов таким образом, сначала проверьте клиента 1, затем 2, затем 3 и начните с клиента 3,2,1 и снова с 1,2 , 3 и т. Д. И также проверяйте каждое значение, не пересекая предельное значение столбца. Значение массива, которое должно быть распределено, должно быть распределено в столбце с большим процентом.

Array : $stone_doll_inner_arr = array(1=>'67212','37256','32909','29847','28529','27643','25356','25274','23604','23058','18581'); 

Я пробовал как

Таблица

 for($m=1;$m<=1;$m++){ for($n=1;$n<=count($stone_doll_inner_arr);$n++){ if ($n % 2 == 0) { $asc_desc = 'asc'; }else{ $asc_desc = 'desc'; } //Query $sql_main_table = "select * from create_nemix_tbl where create_id = '".$getid."' order by percentage ".$asc_desc.""; $qry_main_table = $con->query($sql_main_table); $num_main_table = $qry_main_table->num_rows; if ($n % 2 == 0) { $l = $num_main_table-1; }else{ $l = 0; } while($row_main_table = $qry_main_table->fetch_array()){ $stone_doll_val = $stone_doll_arr[$m]; $stone_doll_val_perc = ($stone_doll_val * $row_main_table['percentage']) / 100; $pre_existing = isset($customer[$l]) ? array_sum($customer[$l]) : 0; $first_value = $pre_existing+$stone_doll_inner_arr[$n]; $var = 0; if ($first_value <= $stone_doll_val_perc){ $customer[$l][] = $stone_doll_inner_arr[$n]; unset($stone_doll_inner_arr[$n]); $var =1; } if($var == 1){ break; } } if ($n % 2 == 0) { $l--; }else{ $l++; } } } echo "<pre>"; print_r($customer); - for($m=1;$m<=1;$m++){ for($n=1;$n<=count($stone_doll_inner_arr);$n++){ if ($n % 2 == 0) { $asc_desc = 'asc'; }else{ $asc_desc = 'desc'; } //Query $sql_main_table = "select * from create_nemix_tbl where create_id = '".$getid."' order by percentage ".$asc_desc.""; $qry_main_table = $con->query($sql_main_table); $num_main_table = $qry_main_table->num_rows; if ($n % 2 == 0) { $l = $num_main_table-1; }else{ $l = 0; } while($row_main_table = $qry_main_table->fetch_array()){ $stone_doll_val = $stone_doll_arr[$m]; $stone_doll_val_perc = ($stone_doll_val * $row_main_table['percentage']) / 100; $pre_existing = isset($customer[$l]) ? array_sum($customer[$l]) : 0; $first_value = $pre_existing+$stone_doll_inner_arr[$n]; $var = 0; if ($first_value <= $stone_doll_val_perc){ $customer[$l][] = $stone_doll_inner_arr[$n]; unset($stone_doll_inner_arr[$n]); $var =1; } if($var == 1){ break; } } if ($n % 2 == 0) { $l--; }else{ $l++; } } } echo "<pre>"; print_r($customer); с for($m=1;$m<=1;$m++){ for($n=1;$n<=count($stone_doll_inner_arr);$n++){ if ($n % 2 == 0) { $asc_desc = 'asc'; }else{ $asc_desc = 'desc'; } //Query $sql_main_table = "select * from create_nemix_tbl where create_id = '".$getid."' order by percentage ".$asc_desc.""; $qry_main_table = $con->query($sql_main_table); $num_main_table = $qry_main_table->num_rows; if ($n % 2 == 0) { $l = $num_main_table-1; }else{ $l = 0; } while($row_main_table = $qry_main_table->fetch_array()){ $stone_doll_val = $stone_doll_arr[$m]; $stone_doll_val_perc = ($stone_doll_val * $row_main_table['percentage']) / 100; $pre_existing = isset($customer[$l]) ? array_sum($customer[$l]) : 0; $first_value = $pre_existing+$stone_doll_inner_arr[$n]; $var = 0; if ($first_value <= $stone_doll_val_perc){ $customer[$l][] = $stone_doll_inner_arr[$n]; unset($stone_doll_inner_arr[$n]); $var =1; } if($var == 1){ break; } } if ($n % 2 == 0) { $l--; }else{ $l++; } } } echo "<pre>"; print_r($customer); 

Структура таблицы и вывод скрипта, который я хотел введите описание изображения здесь

введите описание изображения здесь