webForumDet fria alternativet

Skriva ut sträng fram till radbryt

PHP

10 svar · 379 visningar · startad av oskob

Medlem sedan maj 20021 558 inlägg
Frågan#1

Hejsan!
Om jag har en textfil som ser ut såhär...

---------

Hejsan en liten text!
Lite mer!
Lite mer ändå!

---------

...och vill skriva ut dem rad för rad använder jag fgets men den tar även med radbrytningen i slutet av raden.
Kan man få den att inte göra det på något sätt?
Det går inte att bara ta bort det sista tecknet eftersom sista raden inte avslutas med radbryt.

Hur förklarar man för php hur en radbrytning ser ut?

Medlem sedan juni 200032 967 inlägg
#2

Hur förklarar man för php hur en radbrytning ser ut?

En radbrytning är \n, så du kan alltid använda str_replace() för att göra dig av med alla radbrytningar.

Mvh

Medlem sedan aug. 20002 975 inlägg
#3

Eller varför inte rtrim ?

Medlem sedan maj 20021 558 inlägg
#4

Jag testade det men den tror att den ska leta efter "\n", alltså ett snedstreck och ett "n".

$element = str_replace('\n', '', substr($result, 1, $pos));

så såg det ut när jag testade.

Medlem sedan aug. 20002 975 inlägg
#5

Sätt det inom citationstecken istället: "\n".
Kör du på ett windowssystem ska du troligtvis ha "\r\n".

Testade du med rtrim() ?

Medlem sedan maj 20021 558 inlägg
#6

Förresten hur gör man en tab i php? Alltså tecknet som blir när man trycker på tab-knappen.

Medlem sedan maj 20021 558 inlägg
#7

Ja rtrim funkade ju kanon!
Tackar!

Medlem sedan aug. 20002 975 inlägg
#8

oskob skrev:

Förresten hur gör man en tab i php? Alltså tecknet som blir när man trycker på tab-knappen.

"\t"

Den rensas också bort av rtrim() i slutet av en sträng.

Medlem sedan maj 20021 558 inlägg
#9

Okej... men varför kan man inte använda \n och \t om man har ' istället för ".
echo "hej \n Nyrad!"; fungerar men inte echo 'Hej \n Ny rad?';

Medlem sedan aug. 20002 975 inlägg
#10

Inom apostrofer/enkelfnuttar tas allt bokstavligt vad som står där, inom citationstecken kollar PHP-tolken efter styrtecken och $variabler och omvandlar dessa. "\n" omvandlas t.ex. till tecken nr 10 (Line-feed).

Medlem sedan maj 20021 558 inlägg
#11

Jaha på så vis. Tack för det!

258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)