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"