hattının tamamını okuduğundan emin olun Her satır için bir dizi sağlayan fgetcsv() öğesini kullanarak bir CSV dosyasından veri almak için PHP kullanıyorum. 200+ sütunlar birçok satırlarda 1024 sınırını aştı içeren bir CSV Ancakfgetcsv()
while ($data = fgetcsv($fp, 1024)) {
// do stuff with the row
}
: Başlangıçta, ben, 1024 de karakter sınırı seti vardı gibi. Bu, satırın bir satırın ortasında durmasına neden oldu ve daha sonra fgetcsv() öğesine yapılan bir sonraki çağrı, bir EOL'a ulaşılana kadar bir önceki kaldığı yerden başlayacaktı.
Bu limiti 4096'ya yükselttim, bu da çoğu durumda dikkatli olmalıydı, ancak her satırın alınmasından sonra tüm satırın okunduğundan emin olmak için bir giriş yapmak istiyorum. Bunun için nasıl giderim?
Dizinin son öğesinin son satırının sonunu kontrol etmeyi düşünüyordum (\ n, \ r, \ r \ n), ancak bunlar fgetcsv() çağrısı ile ayrıştırılamaz. ?
Ayrıca ben programlı dosyada en uzun çizgi belirleyebilir, ama bu gerçekten büyük CSV dosyaları üzerinde ek yük bir sürü olabileceğini biliyoruz. Her bir çizginin, bütünüyle anında okunmasını nasıl sağladığını öğrenmek isterim. –