Sebastian Becker: CSV-Datei auslesen

Beitrag lesen

Hallo,

ich würde gerne aus einer CSV-Datei mit 1500 Zeilen
und 2 Spalten, immer eine Zeile per Zufall auslesen.
In Spalte 1 steht der Autor, in Spalte 2 das Zitat.

als erster Ansatz hier mal ein einfaches Skript (s.u., ungetestet!), daß per Zufall Zitate aus einer Textdatei ausliest, die durch Separatorzeichen getrennt sind.

Vorteile gegenüber CSV: Leichter zu editieren, Zeilenumbüche im Textfile werden auch bei der Ausgabe als Zeilenumbüche dargestellt.

Wenn es unbedingt ein CSV-File sein soll, musst Du das Skript entsprechend ergänzen bzw. abändern ...

Grüße,

Sebastian

<?php

// quotes file
$quotes_file = 'quotes.txt';

// separators
$separator_1 = '*';
$separator_2 = '#';

// ----------------------------------------------------------------------

// seed the random number generator
srand((double)microtime()*1000000);

// get content from quotes file
$file_content=join('',file($quotes_file));

// split string and make array with quotes
$quotes_array=explode($separator_1,$file_content);

// select random quote number
$quotescount=sizeof($quotes_array);
$random_number=rand(0,$quotescount-1);

// calculate quote number
$quote_number=$quotescount-$random_number;

// make array with random quote and author
$random_quote_array=explode($separator_2,$quotes_array[$random_number]);

// show random quote and author
echo "Quote $quote_number of $quotescount:\n<br>\n<br>\n";
echo nl2br($random_quote_array[0]) . "\n<br>\n<br>\n" . $random_quote_array[1];

?>