ich habe ein problem beim einlesen einer csv-datei. das zeilenweise einlesen klappt soweit ganz gut, jedoch: wenn der inhalt einer Spalte mit Anführungsstrichen geschachtelt ist, bekomme ich schwierigkeiten beim "exploden" der einzelnen Spalten. hier nun der relevante Auszug aus dem Skript:
	
Wer kann mir da weiterhelfen?
							
						
					PHP-Code:
	
	
$AA = explode("\r\n", $page);
        $zeilen_anzahl=count($AA);
        echo $zeilen_anzahl.'Zeilen<br>';
        
        #echo "<textarea name=\"textarea\" rows=30 cols=30>".$page."</textarea><br>";
        #preg_replace("/\\\"(.*)\\\"/", "$1", $csv);
        #preg_replace('/\\"([^(\")\r\n]*)\\"/','$1',$csv);
        #echo "<textarea name=\"textarea\" rows=30 cols=30>$page</textarea>";
        
        $erste_zeile_spalten= $AA[0];
        $spalten_namen=explode(";",$erste_zeile_spalten);
        $spalten_in_datei=count($spalten_namen);
        ?><table border="1" bordercolor="#EFEFEF" cellpadding="1" cellspacing="1" width="1000">
        <?php 
        function changetext($txt) {
                $txt = str_replace(";\"", "ßßßßß", $txt);
                $txt = str_replace("\";", "ßßßßß", $txt);
                $txt = str_replace(";", ", ", $txt);
                $txt = str_replace("\"", ".", $txt);
                $txt = str_replace("ßßßßß", ";", $txt);
                #$txt = htmlentities($txt);
                return $txt;
                }
        #for($i=0;$i<$zeilen_anzahl;$i++)
        for($i=0;$i<40;$i++)
            {
            
            #if(preg_match('[;]',$AA[$i]){?>
            <tr><td colspan=7> <?php echo htmlentities(str_replace("#",'',$AA[$i]));?></td></tr>
            <?php 
            #} ?>
            <tr valign="top"><td><?php echo $i?></td>
            <?php 
            for($j=0;$j<$spalten_in_datei;$j++)
                {
                #^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,4}$
                #$AA[$i] = preg_replace('!;(.*?);!',"§§§$1§§§",$AA[$i]);
                #$AA[$i] = preg_replace("^(\";)(.*?)(;\")$","§§§$1§§§",$AA[$i]);
                #$AA[$i] = preg_replace("(\";)(.*?)(;\")","§§§$1§§§",$AA[$i]);
                /*
                
                $text = preg_replace("/(\[change])(.*)(\[\/change\])/eisU", "changetext('$2')", $text);
                */
                #$AA[$i] = preg_replace("(/^a/i)(.*?)(/^a/i)","§§§$1§§§",$AA[$i]);
                #$AA[$i] = preg_replace("/(;\")(.*)(\";)/eisU", "changetext('$2')", $AA[$i]);
                $AA[$i] = preg_replace("/(;\")(.*)(\";)/eiU", "changetext('$2')", $AA[$i]);
                $spalte_inhalt=explode(";",$AA[$i]);
                ?>
                <td><?php $inhaltsausgabe= str_replace("#",'',$spalte_inhalt[$j]);
                if($inhaltsausgabe!=""){echo $inhaltsausgabe;}else{echo"-";}
                ?></td>
                <?php
                }
                ?>
            </tr>
            <?php 
            }
          
 so langsam komme ich hinter dein Problem 
 - ich vermute, dass einer deiner Datensätze wie folgt aussehen könnte:
Kommentar