mkn
mkn

Reputation: 13081

UTF8 to latin1_swedish_ci

There are a lot of topics about latin1_swedisch_ci to utf8 conversion. But what about the other way around? I'm dealing for quite a long time with this problem and I haven't found a solution so far. Since I don't know what else is accessing this database, I don't want to change the character encoding of the table.

I have in the table a column which is formatted in latin1_swedisch_ci. Now I have to write queries in php. This database contains German and French names, meaning that I have characters like ö,ä,ô and so on. How can I do that?

As an example if I want to query the name 'Bürki', then I have to write something like $name='Bürki'. Is there a proper way to convert it to latin1_swedisch_ci without using string replacement for those special characters?

Upvotes: 7

Views: 23670

Answers (2)

DejanLekic
DejanLekic

Reputation: 19787

I agree with Pekka, however, I would try to use the utf8_decode() function instead because it is possible that iconv is not installed...

Iconv, however, is more powerful - it can do transliteration for an example. But for this purpose I believe utf8_decode() is enough.

Upvotes: 1

Pekka
Pekka

Reputation: 449435

iconv() will convert strings from one encoding to the other.

The encodings that are of interest to you are utf-8 and iso-8859-1 - the latter is equivalent with latin1.

The "swedish", "german" etc. localizations affect issues like sorting only, the character encoding is always the same.

PS.

then I have to write something like $name='Bürki'.

If you encode your source file as UTF-8, you can write Bürki directly. (You would then have to convert that string into iso-8859-1)

Upvotes: 5

Related Questions