Ben bir sekme ayrılmış metin dosyası okuma ve MySQL Veritabanı takarak ile gerçek bir baş ağrısı yaşıyorum.
Sekme ayrılmış metin dosyası bir MS SQL veritabanından (Bence) üretildi ve ben dosyayı okumak ve benim MySQL veritabanında varolan bir tabloya eklemek için basit bir script yazdım.
Ancak, txt dosyasında verileri ile biraz problem var gibi görünüyor. Benim PHP komut dosyası ve ben çıktılarının INSERT deyimleri işlediğinde, alanların her değerlerinin olması gerekenden daha uzundur. Örneğin, ilk alan basit bir iki karakter alfanümerik değeri olmalıdır. Ben (Firefox) Firebug kullanarak INSERT deyimleri, echo eğer, karakterlerin her biri arasında bir siyah elmas bir soru işareti. Ben değerleri var_dump, ben şu olsun:
string(5) "A1"
Şimdi, bu açıkça bir iki karakter dizesini gösterir, ancak var_dump uzun beş karakter bana söyler!
I () değeri trim, ben olsun tüm ilk karakteri (bu durumda "A") 'dir.
Nasıl diğer karakterler de alabilirsiniz, o bile sadece bunları kaldırmak için? Ayrıca, bu değil, olması gerektiği gibi bir varchar, bir BLOB olarak değerini eklemek için MySQL zorluyor gibi görünüyor.
Simon
UPDATE If I do:
echo mb_detect_encoding($arr[0]);
Ben 'ASCII' bir sonuç almak. Bu, multibyte değil, değil mi?