Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Rivin tietyn tekstin muuttaminen

Short Php [09.04.2007 09:00:10]

#

Miten olisi helpoin tapa muuttaa jonkun tiedoston rivin tiettyä pätkää. Allaolevassa "tekstitiedoston sisällössä" on paksunnettu se kohta jota pitäisi muuttaa.

M1|M2|M3|M4|M5|
[l]M7[/l]|M7|M8|M9|M10|

SysRq868 [09.04.2007 09:51:43]

#

Tuskin näin. En jaksa testata, mutta näin sen itse tekisin.

<?php
$file = "tiedosto.txt"; //tiedoston nimi
$rivi = 2; //jos tiedät rivin
$str = "M7"; //muutettava tieto
$ustr = "M11"; //se tieto, miksi muutettava tieto pitää muuttaa

$filu = file($file);
$kahva = fopen($file, "w+");

for($i=0;$i<count($filu);$i++){
  if($i == $rivi){
    $info = explode("|", $filu[$i]);
    for($i=0;$i<count($info);$i++){
      if($info[$i] == $str){
        $mrivi .= $ustr."|";
      } else {
        $mrivi .= $info[$i]."|";
      }
    }
    fwrite($kahva, $mrivi."\n");
  } else {
    fwrite($kahva, $filu[$i]."\n");
  }
}
fclose($kahva);
?>

Suosittelen myös MySQL:ää, ylläoleva koodi muuttuu 4-riviseksi.

Antti Laaksonen [09.04.2007 22:28:11]

#

Mitään kovin helppoa tapaa ei ole, vaan rivit täytyy lukea tiedostosta, tehdä niihin tarvittavat muutokset ja kirjoittaa ne takaisin tiedostoon. Kannattaa kuitenkin miettiä, voisiko tiedot tallentaa jotenkin muuten, koska tällainen rivien muuttelu on aika työlästä ainakin suurilla tiedostoilla. Joka tapauksessa valmiita esimerkkejä asiasta pitäisi löytyä haulla.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta