TobiasG Skrevet 28. april 2010 Skrevet 28. april 2010 Hei. Har et array spørsmål. Sitter med en .txt fil som inneholder 106 linjer med Navn, dette skal deles opp over 4 cells og sorteres alfabetisk. Noen som har et array script som ikke bare kan sortere alle de 106 linjene alfabetisk, men også dele de opp i 4 cells, blir i dette tilfellet 27 rows på de to første og 26 på de to siste cellene. Må jo heller ikke være noen problem om jeg ønsker å legge til nye i txt filen, derfor må dette i array.
Ståle Skrevet 28. april 2010 Skrevet 28. april 2010 (endret) <table> <?php $fil = file( "navn.txt" ); sort( $fil ); for( $i = 0;$i<count($fil);$i++ ) { if( $i%4==0 ) echo '<tr>'; echo '<td>' . $fil[$i] . '</td>'; if( $i%4==3 ) echo '</tr>'; } ?> </table> Endret 28. april 2010 av Ståle
TobiasG Skrevet 7. mai 2010 Forfatter Skrevet 7. mai 2010 <table> <?php $fil = file( "navn.txt" ); sort( $fil ); for( $i = 0;$i<count($fil);$i++ ) { if( $i%4==0 ) echo '<tr>'; echo '<td>' . $fil[$i] . '</td>'; if( $i%4==3 ) echo '</tr>'; } ?> </table> Denne gjør deeelvis det jeg er ute etter. men skal ikke ha en rute per, det skal være 1 raw bare, men 4 collums. så la oss si det er 60 verider i txt filen, så blir det 15 i hver raw, disse skal bare skilles med en <br> seg i mellom.. hvis ikke vil det sorteres alfabetisk mot høyre og ikke nedover
BlueEAGLE Skrevet 7. mai 2010 Skrevet 7. mai 2010 http://php.net/explode Det du trenger er et skilletegn som avgjør hva som er navn, passord, epost eller hva du nå har i de fire feltene. Alternativt så har du php.net/substr hvis feltene starter på en kjen plass. Brukes gjerne sammen med php.net/rtrim
TobiasG Skrevet 7. mai 2010 Forfatter Skrevet 7. mai 2010 http://php.net/explode Det du trenger er et skilletegn som avgjør hva som er navn, passord, epost eller hva du nå har i de fire feltene. Alternativt så har du php.net/substr hvis feltene starter på en kjen plass. Brukes gjerne sammen med php.net/rtrim Da har du nok missforstått du kan se dette som en txt fil med 100 navn, navnene skal sorteres i 4 colls, men kun 1 row, altså i dette tilfellet, 25navn i raw over 4 colls..
Jonas Skrevet 8. mai 2010 Skrevet 8. mai 2010 Du vil altså dele inn en liste i x antall like store deler? <?php $names = array ( 'Morten', 'Fredrik', 'Ola', 'Per', 'Øyvind', 'Sebastian', 'Henning', 'Kristoffer', 'Jonas' ); sort ( $names ); $columns = 2; $max_names_per_column = ceil ( count ( $names ) / $columns ); for ( $i = 0; $i < $columns; $i++ ) $name_lists[] = array_slice ( $names, $max_names_per_column * $i, $max_names_per_column ); print_r ( $name_lists ); ?>
TobiasG Skrevet 8. mai 2010 Forfatter Skrevet 8. mai 2010 Du vil altså dele inn en liste i x antall like store deler? <?php $names = array ( 'Morten', 'Fredrik', 'Ola', 'Per', 'Øyvind', 'Sebastian', 'Henning', 'Kristoffer', 'Jonas' ); sort ( $names ); $columns = 2; $max_names_per_column = ceil ( count ( $names ) / $columns ); for ( $i = 0; $i < $columns; $i++ ) $name_lists[] = array_slice ( $names, $max_names_per_column * $i, $max_names_per_column ); print_r ( $name_lists ); ?> Output: Array ( [0] => Array ( [0] => Fredrik [1] => Henning [2] => Jonas [3] => Kristoffer [4] => Morten ) [1] => Array ( [0] => Ola [1] => Per [2] => Sebastian [3] => Øyvind ) )
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå