Avatar billede bo_jorgensen Nybegynder
15. marts 2008 - 12:04 Der er 11 kommentarer

Gemme data i starten af en fil

Nu bruger jeg:
    $handle = fopen($log_path.'/log.dat', 'a');
    fwrite($handle, date('Y.m.d H.i.s', time())." ".$data.chr(13).chr(10));
    fclose($handle);
til at gemme data sidst i en logfil.

Men jeg har nu fundet ud af at jeg vil tilføje nye data øverst i filen, men hvordan gør jeg det bedst, så serveren belastes mindst muligt ?

På forhånd tak.
Jorgensen
Avatar billede moddi100 Seniormester
15. marts 2008 - 12:28 #1
Jeg ville jo nok bare bruge r+ i stedet for a, når du åbner filen.

http://phpartikler.dk/artikler/filsystem.php
Avatar billede bo_jorgensen Nybegynder
15. marts 2008 - 18:01 #2
Vil det sige at der så blot skrives i starten - uden at der slettes data ?

Tak
Avatar billede moddi100 Seniormester
15. marts 2008 - 18:19 #3
ja så vidt jeg ved
Avatar billede moddi100 Seniormester
15. marts 2008 - 18:20 #4
Du kan jo altid prøve dig frem
Avatar billede coderdk Praktikant
15. marts 2008 - 19:13 #5
r+ vil overskrive filen. Det er ikke så smart at skrive i starten af filen, da det indebærer at skrive en ny fil, hvor du skriver dine data i starten, læser den gamle fil og skriver data i den nye, sletter den gamle og renamer den nye til det gamle navn ;)
Avatar billede olebole Juniormester
15. marts 2008 - 23:44 #6
<ole>

- eller læser den gamle fil ind i en variabel - og overskriver den gamle fil med den nye streng, konkateneret med variablen  :)

/mvh
</bole>
Avatar billede coderdk Praktikant
16. marts 2008 - 02:12 #7
ole ikke forstyrre mig når jeg er på stoffer :D hahaha file_put_contents($variabel.file_get_contents("fil.txt"));
Avatar billede coderdk Praktikant
16. marts 2008 - 02:13 #8
Det skulle have været:

file_put_contents( "fil.txt", $variabel . file_get_contents( "fil.txt" ) );
Avatar billede coderdk Praktikant
16. marts 2008 - 02:14 #9
Ok, da jeg postede det sidste så det faktisk ret usmart ud ;P Måske skulle det bare være som Ole foreslår:

$fil = file_get_contents( "fil.txt" );
file_put_contents( "fil.txt", $variabel . $fil );
Avatar billede coderdk Praktikant
16. marts 2008 - 02:16 #10
I dit tilfælde så:

$f = $log_path.'/log.dat';
$fil = file_get_contents( $f );
file_put_contents( $f, date("Y.m.d H.i.s") . "\r\n" . $fil );
Avatar billede olebole Juniormester
16. marts 2008 - 02:24 #11
- og næste gang vil jeg gerne ryge med, bro'  ;D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

Dynamicweb Software A/S

Solution Architect

Cognizant Technology Solutions Denmark ApS

Sr. Test Analyst

Udviklings- og Forenklingsstyrelsen

Karrieremulighed inden for cybersikkerhed