PHP: Læse txt-filer
Jeg er ved at lave et script (eller ihvertfald forsøge på det), som kan læse log-filer (txt-filer).De kunne f.eks. se således ud:
-----
[Slot000]
Driver=Kører1
Vehicle=Ferrari 550 Maranello
Penalty=0
Place=1
Laps=24
BestLap=1:34.647
RaceTime=DNF
Reason=0
[Slot001]
Driver=Kører2
Vehicle=Lamborghini Murcielago R-GT
Penalty=0
Place=2
Laps=6
BestLap=1:35.450
RaceTime=DNF
Reason=0
----
Hvordan får jeg dem lettest læst ind i en mysql-database?
Har herunder forsøgt mig på at få dem skrevet ud (altså uden om mysql i første omgang).
<?
$filnavn="logfil.txt".
$url="logs/".$filnavn;
$cont = file_get_contents( $url );
$arr = preg_split( "/[Slot(.*)]/s", $cont );
unset( $arr[0] );
$arr = array_unique( $arr );
foreach ( $arr as $trackstat )
{
$lines = explode( " ", trim( $trackstat ) );
foreach ( $lines as $line )
{
$var = explode( "=", $line );
if ( count( $var ) == 2 )
{
$key = trim( $var[0] );
$val = trim( $var[1] );
// Slet echo og gem i stedet i databasen...
echo "$key = $val<br>";
}
}
}
?>
Det er hvad jeg har rodet mig frem til indtil videre...
Men jeg kan bare ikke få det til at virke. Det jeg skal er at behandle hver blok (f.eks. [Slot000]), således at det er muligt at sende den til en mysql-database.
Hvad er det lige jeg gør galt?
Hvis I vil se hvordan logfilen "rigtigt" ser ud, så ligger der en her:
http://www.riisonline.dk/logfil.txt
