webForumDet fria alternativet

Hur raderar man en rad med php

2 svar · 228 visningar · startad av Snakes

SnakesMedlem sedan okt. 2004392 inlägg
#1

Hur raderar jag en rad med php där iden ska stämma med den iden jag vill ta bort. en rad kan se ut så här
34|Rubrik|nyhet|datum|

jag vet att jag ska använda fopen och fclose men jag vet inte hur

priorityMedlem sedan okt. 20041 inlägg
#2

nått i den här stilen?

$removeid=34;
$array = file("fil.dat"); // läs in filen
$fw = fopen("fil.dat", "w"); // öppna filen för skrivning
flock($fw, LOCK_EX); // lås filen
$i=0;
while ($i < count($array)) {
  list($id,$rubrik,$nyhet,$datum,) = explode('|',$array[$i]);
  if ($removeid != $id) { // skriv in alla rader utom den vi ska ta bort
    fputs($fw,chop($array[$i]) . "\n");
  }
  $i++;
}
flock($fw, LOCK_UN); // lås upp filen
fclose($fw); // stäng filen
SnakesMedlem sedan okt. 2004392 inlägg
#3

Funkar det om jag inte har nåt i filen förutom den raden och vad gör LOCK_UN
går det och skriva in saker i filen från andra platser samtidigt som det här scriptet körs?

134 ms totalt · 3 externa anrop · v20260731065814-full.ca5a5675
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)