Autor Zpráva
pyty
Profil
dokáže PHP pracovať s riadkami ineho dokumentu ?
potreboval by som aby napr. riadok.php urobil z inym dokumentom napr. doc.php toto:
1. "vytvorill" hore prvy riadok a pridal tam text
2. pridal text po vytvoreni posledneho riadka, na ten posledny riadok
3. vytvoril a pridla text medzi napr. 8. a 9. riadkom
4. vymazal napr. 8 riadok //nie len tex, ale aj cely riadok//
5. vymazal riadok v ktorom sa hocikde nachaza text "vymazma"
6. pridal text za alebo. pred napr. 4. riadok
da sa to ??? dik
Petra
Profil
Ano, jde. Co mě tak narychlo napadá, tak třeba funkce file() načte obsah souboru do pole, každá řádka je pak jedním prvkem pole. A tam už se pak snadno zjistí, který prvek je 8. nebo 9.
pyty
Profil
fajn, t s prvym a poslenym riadkom by som uz mal :
<?

$fp = fopen($meno,"r");
$obsah = fread( $fp, filesize( $meno ) );
fclose( $fp );
$pridanie=$text."\r\n".$obsah; //$pridanie=$obsah."\r\n".$text; pre posledny
$fp = fopen($meno,"w");
fwrite( $fp , $pridanie);
fclose($fp);
?>

ale to mi velmi nepomoze. neviete nikto aj to ostatne ?? pls .-)
llook
Profil
Jak radí petra, načíst to do pole funcí file() a pak nějak funkcema pro práci s polem.
pyty
Profil
prosim, napiste mi tu aspon kod na pidanie textu z inputu predchcadzajucej stranky medzi prvy a treti riadok:

riadok jeden
riadok dva

sa zmeni na

riadok jeden
pridany text
riadok dva

prosim, len to jedno konkretne.
diky
mipo
Profil
Píšem to spamäti a v PHP som už dlho nič nerobil, ale malo by to fungovať:-)

<?
$subor = file("xxx.txt"); // nacita subor do pola funkciou file();
// do premenej $output vkladame vsetky vystupne hodnoty, ktore chceme ulozit do koncoveho suboru
$output = "$subor[0]; // do $output vlozime prvy riadok
$output .= $pridany_text; // $pridany_text obsahuje text, ktory chces vlozit medzi riadky
$output .= "$subor[1]; // do $output vlozime druhy riadok
// ulozime do suboru
$fp = fopen("xxx.txt", "w");
fwrite( $fp , $output);
fclose($fp);
?>


Funguje to na jednoduchom princípe: načítaš si obsah súboru. Vypíšeš do neho prvý riadok, potom nový riadok a potom (pôvodne) druhý. Asi bude potrebné sa vyhrať ešte s \n.
pyty
Profil
mipo
dik moc!
ale ja som este zabudol na taku drobnost...
tam po tom vlozenom riadku nebude len jeden riadok...
ale "nedefinovany" pocet
ako to upravit ??
llook
Profil
Místo řádku
$output .= "$subor[1]; // do $output vlozime druhy riadok

dát tohle
for ($i=1; $i<count($subor); $i++) {

$output .= $subor[$i];
}
pyty
Profil
dik, dnes to uz nestiham vyskusat...
zajtra napisem ako :-)
este raz DAKUJEM
pyty
Profil
no a k riadkom mam este jednu otazku
ako zmenit riadok z obsahom :
"obsh povodny"
na
"novy obsah"
cislo riadku samozrejme nepoznam
proste zadat presny obsah toho riadku, ktory sa ma zmenit
a keby to neslo, v tomto pripade by sa to dalo aj tak ako hore
<?

$subor = file("xxx.txt"); // nacita subor do pola funkciou file();
// do premenej $output vkladame vsetky vystupne hodnoty, ktore chceme ulozit do koncoveho suboru
$output = $subor[0]; // do $output vlozime prvy riadok
$output .= $pridany_text; // $pridany_text obsahuje text, ktory chces vlozit medzi riadky
for ($i=1; $i<count($subor); $i++) {$output .= $subor[$i];}
// ulozime do suboru
$fp = fopen("xxx.txt", "w");
fwrite( $fp , $output);
fclose($fp);
?>

len ze by sa riadky nepocitali od hora, ale od dola. od spodku totiz viem presny pocet
napise mi niekto AKO ?? pleasss
magnum
Profil *
pouzivat file("abc") je imho dost nebezpecne. clovek nikdy nema na 100% ze ten subor nebude napriklad >200Mb a to dokaze urobit potom divy ...

minimalne by som testoval velkost a napr so suborom vacsim ako napr 10 Mb robim zasadne len cez fopen a fwrite a fgets(c)
pyty
Profil
magnum
ja som este 200mb html subor nevidel.... ty uz ano ????
PS: velmi si mi nepomohol
prosim, pomozte niekto
Toto téma je uzamčeno. Odpověď nelze zaslat.