Mailinglisten-Archive |
Hallo Christian, > und zwar möchte ich eine funktion schreiben, die zwei ihr als > parameter übergebene arrays mit daten füllt. > > mein versuch: > $head = Array(); > $lines = Array(); > import("dump_E_ADRESSE.txt", $head, $lines); > > foreach($lines AS $val) echo implode(" - ", $val); > > function import($in_dumpfilename, &$out_head, &$out_lines) > { > $fp = fopen($in_dumpfilename,"r"); > $out_head = fgetcsv($fp, 4096, ","); > while(!feof($fp)) > $out_lines[] = fgetcsv($fp, 4096, ","); > fclose($fp); > } > ergibt nen 500 error... ich denke der Fehler liegt entweder im Pfad zur Datei oder die Art und Weise das Array darzustellen. Hier meine 2-Minuten-Lösung: <?php $head = Array(); $lines = Array(); Import($_SERVER["DOCUMENT_ROOT"]."/pfadzumcsvfile/file.csv", $head, $lines); echo EchoArray($lines); function Import($in_dumpfilename, &$out_head, &$out_lines) { $fp = fopen($in_dumpfilename, "r"); $out_head = fgetcsv($fp, 4096, ","); while(!feof($fp)) $out_lines[] = fgetcsv($fp, 4096, ","); fclose($fp); } function EchoArray($ar) { $sRet = " <table cellspacing='0' cellpadding='5' border='0'> <tr> <td nowrap><font size='1'><b><i>Array Elements:</i></b></font><hr></td> </tr> <tr> <td> <table cellspacing='0' cellpadding='2' border='0'> "; if (!is_array($ar)) { $sRet .= " <tr> <td><b>its not an array</b></td> </tr> </table> "; return $sRet; } foreach ($ar as $k => $v) { $sRet .= " <tr> <td valign='top' nowrap><b>".$k."</b></td> <td valign='top' nowrap>=></td> <td valign='top' nowrap>".$v; if (is_array($v)) { $sRet .= EchoArray($v); } $sRet .= " </td> </tr> "; } $sRet .= " </table> <br><hr> </td> </tr> </table> "; return $sRet; } ?>
php::bar PHP Wiki - Listenarchive