Çeşitli RSS beslemeleri metinlerin çok dışarı okuma ve benim veritabanına koymadan ediyorum.
Tabii ki, örneğin yemlerde kullanılan birkaç farklı karakter kodlamaları vardır UTF-8 ve ISO-8859-1.
Ne yazık ki, metinlerin kodlamaları ile bazen sorunlar vardır. Örnek:
1) "Fußball" in "ß" benim veritabanında bu gibi görünmelidir: "AY". Bir "ay" ise, doğru görüntülenir.
2) Bazen "Fußball" in "ß" benim veritabanında bu gibi görünüyor: "ß". Daha sonra tabii ki, yanlış gösterilir.
3) Diğer durumlarda, "ß" a "ß" olarak kaydedilir - yani herhangi bir değişiklik olmadan. Daha sonra, aynı zamanda yanlış gösterilir.
Ne Olgu 2 ve 3 önlemek için ne yapabilirim?
Nasıl her şeyi aynı kodlama, tercihen UTF-8 yapabilir? Ne zaman utf8_encode kullanmanız gerekir (), ben utf8_decode kullanmanız gerekir zaman () (bu etkinin ne olduğu belli ama ne zaman ben işlevleri kullanmak gerekir?) Ve ne zaman girdi ile bir şey yapmak gerekir?
Can you help me and tell me how to make everything the same encoding? Perhaps with the function mb-detect-encoding()? Can I write a function for this? So my problems are: 1) How to find out what encoding the text uses 2) How to convert it to UTF-8 - whatever the old encoding is
Şimdiden teşekkürler!
EDIT: Would a function like this work?
function correct_encoding($text) {
$current_encoding = mb_detect_encoding($text, 'auto');
$text = iconv($current_encoding, 'UTF-8', $text);
return $text;
}
Bunu test ettik ama çalışmıyor. Bunun nesi yanlış?