Hello,
Ist dir da unterschiedliches Verhalten von fgetcsv() bekannt, je nachdem auf welcher Plattform es verwendet wird? Mir ist da bisher nichts aufgefallen. Ich war immer der Meinung, dass alle üblichen Zeilenendezeichen erkannt werden, sogar bei gemischter Verwendung.
fgetcsv() interessiert sich gar nicht für die Zeilenenden ;) das macht fopen() - aber dem ist das Zeilenende beim Lesen egal, nur beim Schreiben eben nicht, da muss man sie per Hand setzten. Beim Lesen von Binärdaten kann man fopen dazu bringen, die Zeilenenden zu ignorieren (oder Codefragmente die dort so aussehen) indem man das b-Flag nutzt.
Das musst Du mir jetzt bitte mal näher erklären. fopen() sollte es doch egal sein, was im File drinsteht. Lesen muss ein fread() innerhalb des fgetcsv() erst nach dem Einlesen eines Datenblockes kann dieser auf seinen Inhalt hin (z.B. Zeilenendezeichen) untersucht werden.
Außerdem kann man auch nach dem Öffnen (Rückgabe _ein_ Handle) noch den Inhalt über ein anderes Handle verändern. Das würde eine Erkennung per fopen() ad absurdum führen.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg