UTF-8
スペイン語でエンコードされたデータを取得しています。私がそれを入れる必要があるデータベース列は現在latin1
charsetを使用しています。
そのUTF-8データをそれらの列に入れるとどうなりますか?正しいデータは失われますか?または、php関数を使用してエンコーディングを変換する必要がありますmb_convert_encoding
か?
UTF-8
スペイン語でエンコードされたデータを取得しています。私がそれを入れる必要があるデータベース列は現在latin1
charsetを使用しています。
そのUTF-8データをそれらの列に入れるとどうなりますか?正しいデータは失われますか?または、php関数を使用してエンコーディングを変換する必要がありますmb_convert_encoding
か?
可能なすべてのバイトシーケンスはで有効でlatin1
あるため、UTF-8でエンコードされた文字列を列に入れることができ、何も文句を言うことはありません。データベースからデータを抽出して戻すと、バイトは入力されたときと同じになるため、クライアントがそれらのバイトがUTF-8でエンコードされていることを知っていれば、元のデータを取り戻すことができます。
ただし、実際にはそのようにすべきではありません。列のデータ型をUTF-8に変更してみませんか?
ALTER TABLE my_table MODIFY my_column TEXT CHARACTER SET utf8;