---
title: "enklast möjliga"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/15790-enklast-möjliga"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "webbmannen"
published: "2001-06-20T09:43:00.000Z"
updated: "2001-06-20T18:34:00.000Z"
replies: 3
views: 211
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/15790-enklast-möjliga"
---

# enklast möjliga

## #1 — webbmannen, 2001-06-20T09:43Z

Jag vet att det varit uppe förr och finns exempel, men jag undrar om någon skulle vilja förklara vad som saknas/är fel i denna kod.

```
$read = fopen("counter2.txt","r");
$add = $read + 1;
$write = fwrite($add,"w");
fclose($write);
include "counter2.txt";
```

Jag läser den som: Öppna och läs counter2.txt - Ta den lästa filen och öka med 1 - Skriv in nya värdet i counter2.txt - Stäng uppdateringen - Hämta och skriv ut värdet.

Min logik är inte rätt, men vad är felet?

/webb

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

## #2 — SPiN, 2001-06-20T16:50Z

För det första fungerar inte den koden...
Men för att tolka den:
fopen("counter2.txt", "r"); returnerar en filpekare som en integer. Denna integer ökas sedan med ett. Vad som händer sen är ett mysterium, eftersom att bokstaven w ska skrivas till $add, som inte pekar till någon fil, och $write  tilldelas en integer som inte finns(?!) - kommer bli noll. Sen försöker du stänga $write, som inte finns, vilket kommer ge felmeddelande.

Sedan inkluderas filen...

När man öppnar en fil skapas en pekare, som visar tillbaka till den filen varje gång variabeln används. Om man inte tilldelar något variabelnamn, används samma fil hela tiden.

Studera kodsnuttarna nedan, som gör samma sak:

```
fopen("enfil.txt", 'r');
fwrite("Jalla!");
fclose;
```

```
$fp = fopen("enfil.txt", 'r');
fwrite($fp, "Jalla!");
fclose($fp);
```

Koden nedan däremot skulle inte fungera korrekt utan att ange ett variabelnamn.

```
$fp = fopen("fil_1.txt", 'r');
$fs = fopen("fil_2.txt", 'w');
$innehall = fread(5);
fwrite($innehall);
fclose;
fclose($fs);
```

Kom med lite förklaringar till filpekare, men det var bara för att visa att raden $add = $read + 1; inte betyder att filinnehållet läses, utan filpekaren! :)

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

## #3 — Rödalacket, 2001-06-20T18:24Z

Är det något sånt här du är ute efter?

```
$t=fopen("counter2.txt","r+");//Öppnar textfilen
$read=fread($t, filesize("counter2.txt"));
$new_value=($read+1);//Lägger till ett till värdet i från textfilen
rewind($t);//Spolar tillbaka pekaren till början
fwrite($t,$new_value);//Skriver in det nya värdet
fclose($t);//Stänger filen
```

\------------------
 \<A HREF="http://www.webforum.nu" TARGET=\_blank\>http://www.webforum.nu
\</A\> om datorn själv får välja

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

## #4 — webbmannen, 2001-06-20T18:34Z

Tack för exempel och förklaringar :)

Min vana trogen så försöker jag en hel massa utan att förstå riktigt :( Med svaren ni lämnat så ser jag att det är fler grejer involverade än jag kände till och då är det klart att det inte funkar.

Det här blev en massa bra att ta upp på PPS framöver - Tack igen.

/webb

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

---

Tråden på webben: https://www.webforum.nu/amne/php/15790-enklast-möjliga
