Gå til innhold

Array fra txt , 4 celler


Anbefalte innlegg

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.

Lenke til kommentar
Videoannonse
Annonse
  • 2 uker senere...


<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 :)

Lenke til kommentar

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..

Lenke til kommentar

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 );

?>

Lenke til kommentar

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 ) )

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...