muss ich dafür nich immer eine datei mit der csv auslesen?? ich hab einfach einen string der bereits in einer variable gespeichert ist..
							
						
					Brauche Hilfe zum verarbeiten von CSV ausgabe
				
					Einklappen
				
			
		
	X
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 also ich bekomm das mit diesem fgetcsv einfach nicht mehr hin.. ich weiss nicht wie ich anfangen soll und erst die csv "namen" auszulese und diese dann mit den etsprechenden werten im zweidimensionalen array (siehe beispiel oben und beiträge zuvor) zu füllen.
 
 kann mir nicht jemand einen schnellen gedankenanstoß oder ein kurzes beispiel nennen?  
 Kommentar
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Klar kann ich das!kann mir nicht jemand einen schnellen gedankenanstoß oder ein kurzes beispiel nennen?
 
 Aber eigentlich solltest du ein solches Problem doch selber in den Griff bekommen...
 
 Nagut, auf das Risiko hin, dass du davon keinen Piep verstehst: 
 
 Testdaten:
 Beispiel:Code:decimal;integer;string 4.0;5;retrz 4.5;14;"trtert ret ert" 5.0;24;"fdfdf""sdfdsf" 5.5;33;fdfdf'sdfdsf 6.0;41;fdfdfsdfdsf 6.5;49;"fdfdfs;;;dfdsf" 7.0;57;fdfdf""sdfdsf 7.5;64;"fdfdf"";""sdfdsf" 
 PHP-Code:<?php
 error_reporting(-1);
 ini_set('display_errors', TRUE);
 setlocale(LC_ALL,'de_DE@euro', 'de_DE', 'de', 'ge');
 date_default_timezone_set('Europe/Berlin');
 
 
 
 class CsvIterator implements Iterator
 {
 private $fh = false;
 private $data = array();
 private $pos = 0;
 private $length = 16384;
 private $delimiter = ',';
 private $enclosure = '"';
 
 public function __construct($filename,$length=16384, $delimiter=',',$enclosure='"')
 {
 $this->fh = fopen($filename,'r');
 if(!$this->fh) throw Exception("File $filename open failed!");
 $this->length = $length;
 $this->delimiter = $delimiter;
 $this->enclosure = $enclosure;
 }
 
 public function rewind()
 {
 $this->pos = 0;
 rewind($this->fh);
 $this->data = fgetcsv($this->fh,$this->length,$this->delimiter,$this->enclosure);
 }
 
 public function current()
 {
 return $this->data;
 }
 
 public function key()
 {
 return $this->pos;
 }
 
 public function next()
 {
 $this->data = fgetcsv($this->fh,$this->length,$this->delimiter,$this->enclosure);
 ++$this->pos;
 }
 
 public function valid()
 {
 return (bool) $this->data;
 }
 
 public function __destruct()
 {
 fclose($this->fh);
 }
 }
 
 class CsvNamesFirstIterator extends CsvIterator
 {
 private $names = array();
 
 public function current()
 {
 return array_combine($this->names,parent::current());
 }
 
 public function rewind()
 {
 parent::rewind();
 if(!$this->valid()) throw Exception("File is empty (no names found)!");
 $this->names = parent::current();
 $this->next();
 }
 
 public function key()
 {
 return parent::key() - 1 ;
 }
 }
 
 // testcode
 $ite = new CsvNamesFirstIterator('daten.csv',1000,';');
 foreach ($ite as $key=>$value)
 {
 print_r($value);
 echo '<br>';
 }
 Kommentar
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 danke für deine Bemühungen!!!
 
 aber ich habe den csv String in der Variable $csv stehen und dein Code liest eine Datei aus.. daher bekomme ich Fehlermeldungen wie
 
 leider bekomme ich das nicht wirklick hin den code so umzuschreiben, da ich nicht objekorientiert programmierePHP-Code:Warning: rewind() expects parameter 1 to be resource, string given in D:\xampp\htdocs\test.php on line 73
 
 Warning: fgetcsv() expects parameter 1 to be resource, string given in D:\xampp\htdocs\test.php on line 74
 
 Fatal error: Call to undefined function Exception() in D:\xampp\htdocs\test.php on line 116
  ... ...
 
 Wäre cool wenn du den code eben noch für eine Variable hast  
 Kommentar
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Hallo,
 
 den Code dafür gibt's sogar fertig im Handbuch: PHP: Example class registered as stream wrapper - Manual
 
 Gruß,
 
 Amica[COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt? 
 Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
 Super, danke! 
 [/COLOR]
 Kommentar
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Nur befürchte ich, dass das nix bringt, wenn url_fopen_wrapper deaktiviert ist.
 Und nein, ich schreibe das nicht um.
 Kommentar
 
          
 Moderatorin
 Moderatorin
Kommentar