Zmaznie časti súboru
9 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Mám problém. Na webe mám súbor (napr.: test.dat) a potrebujem zneho vymazať iba určitú čast. Keby mal súbor obsah napr.: $meno="timbulko"; $mail="timbulko@azet.sk"; ||| $meno="Zorro"; $mail="aaa@bbb.ccc"; ||| $meno="Jano"; $mail="jano@janohouse.pl"; ||| tak ako z neho odstránim jednu časť oddelenú znakmi "|||", aby subor vyzeral nejako takto: $meno="timbulko"; $mail="timbulko@azet.sk"; ||| $meno="Jano"; $mail="jano@janohouse.pl"; |||
-
pomocí explode() viz. php.cz nebo interval.cz ..
-
část souboru? Jedině tak, že si vezmeš obsah upravíš a uložíš.
-
Zas az taka lama niesom! Ja viem ze pomocou explode to ide, lenze jako? $data = " \$meno=\"timbulko\"; \$mail=\"timbulko@azet.sk\"; ||| \$meno=\"Zorro\"; \$mail=\"aaa@bbb.ccc\"; ||| \$meno=\"Jano"; \$mail=\"jano@janohouse.pl\"; ||| "; $vystup = explode ("|||", $data); ? ? FWrite (?) ....Co mam dat namiesto otaznikov (?)?
-
pokud máš ve $vystup pole, to upravíš (vyhodíš, co nechceš) a pak, pokud to chceš do souboru v původním stavu, tak to může vypadat třeba takto: $obsah_souboru = implode('|||', $vysutp); //vystup je pole fopen($f, $jmeno_souboru, 'w') or die "heh, nemuzu otevrit soubor $jmeno_souboru"; fwrite($f, $obsah_souboru); fclose($f); --- taky by se dalo zauvažovat nas ukládáním přímo pole (viz manuál serialize() a unserialize()
-
mysql ...
-
jo, sql je v tomto případě vůbec nejlepší...
-
na toto sa pekne hodi pouzivat xml, a mas po problemoch :)
-
Já bych použil regulární výrazy a funkci ereg_replace() asi takto... (netestováno, píšu jen tak z hlavy, možná bude třeba upravit) ------------------------------------ $text=file_get_contents("nazev_souboru"); $text=ereg_replace("|||[^|]jmeno_ktere_chcu_smazat[^|]|||","|||",$text); file_put_string("nazev_couboru",$text); ------------------------------------ takže tak.... nikdy mi regulární výrazy příliš nešly a musel jsem dlouho ladit, tak nevím, jestli to hned na první pokus pojede :-/