przykład:
W polu zakłady są liczby:
Po uruchomieniu skryptu zostana podzielone na zadane parametrem strefy. (tutaj po liczb w strefie: 3,3,2,1) i oddzielone sekwencją zadanych znaków w drugim parametrze.
tekst skryptu w pierwszych liniach parametry podziału :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | <?php //------------ parametry -------- poczatek------------ $sel = array (3,3,2,1); // po ile strefy. w ostatniej strefie jak // do konca liczb -> to wpisac duża liczbe np 100 $space = " " ; // ile spacji w odstepach miedzy sekcjami //------------ parametry -------- koniec ------------- $sets =delphi_str_memoa(); // pobiera set z pola zaklady $set_lines =preg_split( "'\r?\n'" , trim( $sets )); $outarr = array (); $offset =0; foreach ( $set_lines as $line ) { $arr =preg_split( "/[^0-9]+/" ,trim( $line )); //asort($arr); $all []= $arr ; } foreach ( $all as $ary ) { $offset =0; $out = array (); foreach ( $sel as $ile ) { $out []= array_slice ( $ary , $offset , $ile ); $offset += $ile ; } $outarr []= $out ; } foreach ( $outarr as $sets ) { foreach ( $sets as $set ) { echo printTicket( $set ), $space ; } echo "\n" ; } function printTicket( $arr , $format = '%2d ' ) { $result = '' ; foreach ( $arr as $key => $num ) { $result .= sprintf( $format , $num ); } return $result ; } ?> |