Dieser Code ist entweder total a) veraltet, b) sonst Schrott oder c) nix was ich noch auf meiner Seite veröffentlichen muss
Er ist nur noch online damit nicht irgendwelche Forumslinks ins Nirvana zeigen.
Ein kleines Beispiel wie man Daten aus einer CSV-Datei lesen kann und diese auch noch ausfiltern.
ID;NAME;TEXT 1;Test1;Hallo Welt 2;Test2;Aber hallo Erde! 3;Test3;Erde an Mars, bitte kommen
<?php //Suchbegriff $search = "*hallo*"; //Aus den Windows Platzhaltern Reguläre Platzhalter machen $win2RegexpPattern = array('*', '?', '#'); $win2RegexpReplace = array('.*', '.?', '.{1}'); $pattern = '/^'.str_replace($win2RegexpPattern, $win2RegexpReplace, $search).'$/is'; //Datei einlsen $handle = fopen ("table.csv","r"); while (($row = fgetcsv ($handle, 1000, ";")) !== FALSE ) { $rows[] = $row; } fclose ($handle); //Erste Zeile als Header auslesen $header = array_shift($rows); //Die Zeilen mit dem Header indexieren foreach($rows as &$row){ $row = array_combine($header, $row); } //Die Zeilen ausfiltern $filteredRows= array_filter($rows, create_function('$row', "return preg_match('{$pattern}', \$row['TEXT']);")); //Resultat asgeben echo <<<EOT <table> <tr><th>ID</th><th>NAME</th><th>TEXT</th></tr> EOT; foreach($filteredRows as $row){ echo " <tr><td>{$row['ID']}</td><td>{$row['NAME']}</td><td>{$row['TEXT']}</td></tr>\n"; } echo "</table>"; ?>
Man kann natürlich auch direkt im auslesen der Date den Filter anwenden. Je nach bedarf macht das eine oder das andere Sinn.
<table> <tr><th>ID</th><th>NAME</th><th>TEXT</th></tr> <tr><td>1</td><td>Test1</td><td>Hallo Welt</td></tr> <tr><td>2</td><td>Test2</td><td>Aber hallo Erde!</td></tr> </table>