NBS Posted April 16, 2008 Report Posted April 16, 2008 Vēlētos uzzināt, kā apmēram varētu izveidot skriptu, kas veiktu šādu funkciju: Atvērt failu a.txt atrast visas rindas piemēram "janis" Atvērt failu b.txt un visas atrastās rindas ar "janis" pārkopēt uz šo jauno failu b.txt Vai kāds lūdzu varētu izpalīdzēt, esmu koda veidā sapratis kā ir atvērt/aizvērt failu caur manuāļiem, bet kā tieši šādu darbību veikt, neesmu vēl izpratis. Liels paldies, savlaicīgi.
Vebers Posted April 16, 2008 Report Posted April 16, 2008 * atver failu a.txt * nolasi tā saturu ar f-ju php.net/file * ar for / foreach ciklu nolasi katru rindinju, un ja ar preg_match / strstr funkcija atgriez true, tad nokope to rindinju uz jaunu masiivu * ar for / forach ciklu izej cauri karam jaunaa masiiva elementam un ierakti to jaunaa faila Vieglaak nekaa uzcept kuuku :)
blackhalt Posted April 16, 2008 Report Posted April 16, 2008 <?php $findme = 'janis'; $lines = file('a.txt'); fopen('b.txt', 'w+'); // Ja vajag no jauna, ja klaat, tad atkomentee. foreach ($lines as $line_num => $line) { $pos = strpos($line, $findme); if ($pos !== false) { file_put_contents('b.txt',$line,FILE_APPEND); echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n"; } } ?>
Recommended Posts