Formatere indhold af .txt fil

Tags:    php

Jeg mangler lidt at lave for tiden, og har derfor bestemt mig for at lære lidt mere om håndtering af filer.

Jeg har en logfil fra mIRC, som jeg godt kunne tænke mig at udskrive, efter at have bearbejdet den lidt. JEg er desværre lidt blank med hensyn til hvilke funktioner jeg skal have fat i.

Det jeg gerne vil er:
Jeg vil gerne lave highlighting på linjer med ord som f.eks. mit nick Emilbp, så hele linjen kommer til at stå med rød tekst.

Nu hvor jeg har fat i det, kunne jeg også godt tænke mig at vide, hvordan man kan lave linjenumre, som så skal stå forrest i hver linje.


Mvh. Emilbp



6 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
Jeg mangler lidt at lave for tiden, og har derfor bestemt mig for at lære lidt mere om håndtering af filer.

Jeg har en logfil fra mIRC, som jeg godt kunne tænke mig at udskrive, efter at have bearbejdet den lidt. JEg er desværre lidt blank med hensyn til hvilke funktioner jeg skal have fat i.

Det jeg gerne vil er:
Jeg vil gerne lave highlighting på linjer med ord som f.eks. mit nick Emilbp, så hele linjen kommer til at stå med rød tekst.

Nu hvor jeg har fat i det, kunne jeg også godt tænke mig at vide, hvordan man kan lave linjenumre, som så skal stå forrest i hver linje.


Mvh. Emilbp



Sætter du ikke bare "<font color='#FF0000'>" FORAN den kode du henter filens indhold med, og "</font>" bagved?




Det der lyder ikke seriøst. Jeg har en log fil på ~900 linjer, som jeg vil formatere indholdet af, så det er nødt til at være med php.

Mvh. Emilbp


Hvorfor skulle det ikke kunne laves med php?

Fold kodeboks ind/udKode 


:-)
Jakob Nicolajsen



Jeg mangler lidt at lave for tiden, og har derfor bestemt mig for at lære lidt mere om håndtering af filer.

Jeg har en logfil fra mIRC, som jeg godt kunne tænke mig at udskrive, efter at have bearbejdet den lidt. JEg er desværre lidt blank med hensyn til hvilke funktioner jeg skal have fat i.

Det jeg gerne vil er:
Jeg vil gerne lave highlighting på linjer med ord som f.eks. mit nick Emilbp, så hele linjen kommer til at stå med rød tekst.

Nu hvor jeg har fat i det, kunne jeg også godt tænke mig at vide, hvordan man kan lave linjenumre, som så skal stå forrest i hver linje.


Mvh. Emilbp


Du starter med at indlæse filen i en variabel og splitter den op i et array som indeholder linjerne med explode() funktionen, brug \\n som seperator.

Derefter kan du bruge en løkke til at gå arrayet igennem linje for linje.

Så kan du bruge strpos() til at se om et ord optræder i teksten, eller fx bruge substr() til at se om det en af de følgende linjer:

Session Start: Sun Feb 06 12:34:30 2005
Session Ident: #udvikleren.dk
Session Close: Sun Feb 07 01:57:56 2005


Vedr. linjenumre, så kan du tælle antallet af strenge i arrayet, som jo er antallet af linjer med count().
Så kan du udskrive en tabel med 2 kolonner og en række, i den ene celle bruger du en løkke til at udskrive fra 1 til antallet af linjer separeret med og i den anden udskriver du elementerne i arrayet, som du måske har formateret..


Hilsen

Martin Dybdal (Dybber)



http://dk.php.net/manual/en/function.file.php
Der har du dit array.
Kør det igennem, start ved 0, eller 1 osv...
Det er delt op i linjer btw.
Hver gang kan du tjekke om dit nick er der, f.eks. ved strpos()
Give linjen en farve inden du skriver den.

Ganske simpelt :)



Og det med linje numrene er vel også bare: "<ol><li>" FORAN det stykke kode du henter filens indhold med, og "</ol></li>" bagved, så skal du vel bare hente én linje af gangen?

Dét er mit bud.



Og det med linje numrene er vel også bare: "<ol><li>" FORAN det stykke kode du henter filens indhold med, og "</ol></li>" bagved, så skal du vel bare hente én linje af gangen?

Dét er mit bud.


Det der lyder ikke seriøst. Jeg har en log fil på ~900 linjer, som jeg vil formatere indholdet af, så det er nødt til at være med php.

Mvh. Emilbp



t