trixa med textfil

PHP

2 svar · 250 visningar · startad av bughawk

Medlem sedan juni 20001 839 inlägg
Trådstart#1

Jag behöver ett skript som tar ut ett stycke ur en textfil med *nix-radbrytningar och lägger detta i en separat fil. Styckena avgränsas med dubbla radbyten. (d.v.s. en blankrad mellan varje stycke.)

Skriptet är avsett att köras av cron en gång om dagen.

Är inte så hajj på filhantering i php... Tips?

Medlem sedan juni 20008 205 inlägg
#2
# Läs in alla rader i <home>/fil.txt till arrayen $lines
$lines = file("~/fil.txt") or die("Fett me kajko!");
$parags = array();
$curr = "";
foreach($lines as $line)
	# Tom rad och icke-tom "buffert" == nytt stycke kommer snart
	if(!$line and trim($curr)){
		$parags[] = $curr;
		$curr = "";
	}else{
		$curr .= $line;
	}
if($curr)
	$parags[] = $curr;
# Nu är parags en array med alla stycken. Om jag gjort rätt.
Medlem sedan juni 20001 839 inlägg
#3

Tack! Efter en del trixande fick jag det att fungera. :)

Jag fick byta ut

if(!$line and trim($curr)){

mot

if($line == "\n"){
252 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)