Avatar billede r.hegaard Nybegynder
25. februar 2004 - 16:05 Der er 8 kommentarer og
1 løsning

Slette indhold af fil

Hvordan kan man slette alt indhold i en fil (uden at slette filen) ??
Hvordan sletter man øverste linie i en fil ??
Avatar billede r.hegaard Nybegynder
25. februar 2004 - 16:05 #1
Eller evt. bare overskrive hele den øverste linie....
Avatar billede codebase Praktikant
25. februar 2004 - 16:10 #2
Avatar billede r.hegaard Nybegynder
25. februar 2004 - 16:26 #3
Kan du ikke give lidt uddybning ?? Jeg forstår ikke line hvordan man sletter med fwrite.
Avatar billede codebase Praktikant
25. februar 2004 - 16:30 #4
<?php
$filename = 'test.txt';
//$somecontent = "Add this to the file\n";
$somecontent = "";

// Let's make sure the file exists and is writable first.
if (is_writable($filename)) {

  // In our example we're opening $filename in append mode.
  // The file pointer is at the bottom of the file hence
  // that's where $somecontent will go when we fwrite() it.
  if (!$handle = fopen($filename, 'a')) {
        echo "Cannot open file ($filename)";
        exit;
  }

  // Write $somecontent to our opened file.
  if (!fwrite($handle, $somecontent)) {
      echo "Cannot write to file ($filename)";
      exit;
  }
 
  echo "Success, wrote ($somecontent) to file ($filename)";
 
  fclose($handle);
                 
} else {
  echo "The file $filename is not writable";
}
?>
Avatar billede codebase Praktikant
25. februar 2004 - 16:31 #5
$somecontent = "";
er lig ingen ting = tøm filen...
Avatar billede jakoba Nybegynder
25. februar 2004 - 16:37 #6
$fp = fopen( "dinfil.txt", "w" );  //aabner fil for skrivning.
                                  //lad være at skrive noget.
fclose( $fp );                    //luk filen.

den "dinfil.txt" fil er nu tom.

mvh JakobA
Avatar billede jakoba Nybegynder
25. februar 2004 - 16:44 #7
$temp = file( "dinfil.txt" );  // $temp bliver nu et array med een linie i hver celle
$temp = splice( $temp, 0, 1 );  // fjern første celle i det array.
$fp = fopen( "dinfil.txt", "w" );
fwrite( $fp, implode( "", $temp ) ); // skriv alt fra det array
fclose( $fp );

den "dinfil.txt" fil har nu mistet første linie (hvis der var en).

Pas på. det koster en masse udførelsestid hvis det er en stor fil. Det kan være der er andre metoder der er bedre for det du skal bruge det til.
Avatar billede r.hegaard Nybegynder
25. februar 2004 - 16:50 #8
codebase> Det virker ikke.
jakoba> Tak for det. Lægger du lige et svar ??
Avatar billede jakoba Nybegynder
25. februar 2004 - 23:13 #9
ok
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