/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hvad søren sker der her????
Fra : Ladmorillo


Dato : 07-08-02 08:39

Hej

Jeg sidder lige med lidt simpel php kode som kopierer indholdet i en
tekstfil over i en anden tekstfil. Men resultatet bliver ikke helt som
forventet.

Jeg har filen fil1.txt med indhold:

------ fil1.txt -----
0
1
2
3
4
5
6
7
8
9
---------------

og nedenstående smule kode:

<html>
<?php
$fil1 = file('fil1.txt');
$fil2 = fopen('fil2.txt', "w");
foreach($fil1 as $val) fputs($fil2,$val);
?>
</html>

giver det forventede resultat, en fil med indhold præcis som fil1.txt.

Men ændrer jeg koden med en enkelt linie så den ser således ud:

<html>
<?php
$fil1 = file('fil1.txt');
$fil2 = fopen('fil2.txt', "w");
$fil1[3] = "88"; <------------------------- her
foreach($fil1 as $val) fputs($fil2,$val);
?>
</html>

Som efter min mening skulle resulterer i fil2.txt som vill se sådan her
ud:

------ fil2.txt (forventet) -----
0
1
2
88
4
5
6
7
8
9
---------------

Men som rent faktisk giver:

------ fil2.txt -----
0
1
2
884
5
6
7
8
9
-------------------

Hvorfor bliver 4-tallet rykket op???? Det sker kun når jeg ændrer i det
originale array. Jeg ændrer en enkelt af de ti indgange i arrayet og
skriver dem enkeltvis ud i den nye fil med fputs, som skriver en linie
af gangen??

Er det mig der har misforstået et eller andet???

Ladmorillo

--
Leveret af:
http://www.kandu.dk/
"Vejen til en hurtig løsning"


 
 
Thomas Finnerup (07-08-2002)
Kommentar
Fra : Thomas Finnerup


Dato : 07-08-02 09:21

On Wed, 07 Aug 2002 07:39:15 GMT, "Ladmorillo"
<Ladmorillo.news@kandu.dk> wrote:

> Hvorfor bliver 4-tallet rykket op????

file() indlæser en hel fil inkl. linieskift efter hver linie, så prøv
at ændre linien med $fil1[3] til

$fil1[3] = "88\n";


- Thomas

Jakob Møbjerg Nielse~ (07-08-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 07-08-02 09:19

Ladmorillo wrote:
> $fil1[3] = "88"; <------------------------- her

$fil1[3] = "88\n"; //*nix
eller
$fil1[3] = "88\r\n"; //win

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
http://www.jakobnielsen.dk/ | -- Terry Pratchett, Reaper Man
Jeg søger et fuldtidsjob som programmør. Tag et kig på hjemmesiden.



Søg
Reklame
Statistik
Spørgsmål : 177503
Tips : 31968
Nyheder : 719565
Indlæg : 6408541
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste