---
title: "Bryta en rad i en textfil."
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/48050-bryta-en-rad-i-en-textfil"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "MoneyOpps.nu"
published: "2002-07-16T21:07:05.000Z"
updated: "2002-07-17T19:40:28.000Z"
replies: 9
views: 261
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/48050-bryta-en-rad-i-en-textfil"
---

# Bryta en rad i en textfil.

## #1 — MoneyOpps.nu, 2002-07-16T21:07Z

Om jag läser in en rad som ser ut som nedan

text1\|text2\|text3

Om jag läser in det i en array, så blir ju exempelvis $lista\[1\] = text1\|text2\|text3

Kan man på något sätt dela på denna rad, så att det blir $list\[1\] = text1, $lista\[2\] = text2, osv.... ???

Den ska alltså räkna "\|" som en ny rad, och den ska Inte med i värdet på $lista\[1\].....

Hur gör man detta ??

Textfilen har en hel del rader, så då kanske det blir fel neråt sen.... Hjälp tack !

Permalänk: https://www.webforum.nu/p/48050

## #2 — Matte, 2002-07-16T22:09Z

```
<?php
$text = "text1|text2|text3";
$lista = explode("|", $text);
echo $lista[0]."<br>";
echo $lista[1]."<br>";
echo $lista[2];
?>
```

Permalänk: https://www.webforum.nu/p/722529

## #3 — SPiN, 2002-07-16T22:42Z

Missade Matte raden om att det fanns flera rader? ;)
Nåja, det var en fin lösning som man bygger vidare på. :)

```
<?php

$fileList = file( "dinFil.txt" );

while( $curRow = array_shift( $fileArray ) ) {
     $curList = explode( "|", $curRow );
     array_push( $resultList, $curList );
}

?>
```

Jag **tror** att array_push() kan skjuta till en array ( I det här fallet $curList ) längst bak i $resultList, annars får man trixa lite till:

```
...
while( $curRow = array_shift( $fileArray ) ) {
     $curList = explode( "|", $curRow );
     
     while( $curValue = array_shift( $curList ) )
          array_push( $resultList, $curValue );
}
...
```

 :)

Permalänk: https://www.webforum.nu/p/722545

## #4 — MoneyOpps.nu, 2002-07-16T22:58Z

Ok.
Om jag vill läsa in en rad ur arrayen och sen köra en explode på den och lägga in text1, text2 och text3 i en ny array. Hur ska jag göra då ?

Är rädd för att ni snackar med en nybörjare ;)

Permalänk: https://www.webforum.nu/p/722565

## #5 — SPiN, 2002-07-16T23:48Z

Som Matte visade i sitt exempel. Mitt exempel skapade en array av alla rader i filen.

```
<?php

$fileList = file( "dinFil.txt" );
$rowList = explode( "|", $fileList[ 0 ] );

while( $curRow = array_shift( $rowList ) )
     array_push( $resultList, $curRow );

...
?>
```

Om du inte vill läsa in första raden ur filen, utan t.ex. femte, ändrar du bara $fileList\[ 0 \] till $fileList\[ 5 \].

Permalänk: https://www.webforum.nu/p/722573

## #6 — Matte, 2002-07-17T08:06Z

Spin. Vad är finessen med allt det där. Varför inte göra det lite enklare:

```php
<?php

$fileList = file( "dinFil.txt" );
$resultList = explode( "|", $fileList[ 0 ] );

?>
```

Permalänk: https://www.webforum.nu/p/722644

## #7 — MoneyOpps.nu, 2002-07-17T08:24Z

Om jag har fattat det rätt så är det bara att läsa in alla rader i en array och sen köra 

$nyarray = explode( "\|", $fileList\[ önskad_rad \] );

Då hamnar önskad_rad i arrayen $nyarray !?
Rätt ?

Permalänk: https://www.webforum.nu/p/722653

## #8 — Matte, 2002-07-17T08:44Z

Ja, så brukar jag göra.
Läser man in från en textfil så kan det bli lite radslutsmärken och skräp i slutet av strängen. Det gör inget om man ska skriva ut, men om du har sista delen av strängen (sista post i nya arrayen) till att jämföra med något så kan det bli lite knas. För säkerhets skull gör isåfall såhär:

```
$nyarray = explode( "|", rtrim($fileList[ önskad_rad ]) );
```

Om du loopar igenom $fileList så kan du samla arrayerna i en array med:

```
$nyarray[] = explode( "|", rtrim($fileList[ önskad_rad ]) );
```

Då får du en tvådimensionell array, och kan lätt ta fram dina värden med typ 

```
echo $nyarray[1][3];
```

Permalänk: https://www.webforum.nu/p/722660

## #9 — MoneyOpps.nu, 2002-07-17T08:49Z

Ok.... då tror jag att jag vet hur jag ska göra, tackar.
Ska testa ikväll.

Permalänk: https://www.webforum.nu/p/722663

## #10 — SPiN, 2002-07-17T19:40Z

> Spin. Vad är finessen med allt det där.

 :o
Det kan man ju fråga sig. Jag måste ha varit trött, eller så var det min dumhet som tog överhanden. ;)

Permalänk: https://www.webforum.nu/p/722937

---

Tråden på webben: https://www.webforum.nu/amne/php/48050-bryta-en-rad-i-en-textfil
