1

データベースにデータを入力するために、Web上の大きなテーブルからいくつかのデータを取得しています。一部のキャラクターは画面にうまく表示されますが、こすったときに次のようなことをします。!¬†√Öland Islands

file_get_contentsを使用して生データを取得しています。スクレイプした後は問題ないように見えます(つまり、生の結果をvar_dumpするだけの場合)。Åland Islands

次に、データを配列に変換し、テキストファイルまたはSQLファイルに書き込みます。文字のフォーマットを保持するにはどうすればよいですか?

4

1 に答える 1

1

「Å」が「!¬†√Ö」(5 文字) になっている場合は、2 回以上の文字コード変換の誤りが原因である可能性が最も高いです。誤った変換が 1 回あると、文字が別の文字、または文字のペアまたはトリプレットに変換される傾向がありますが、5 文字になることはほとんどありません。

スクレイピング後にダンプしたときに問題がないように見える場合は、どの文字エンコーディングが使用されているかを調べ、データをファイルにどのように書き込んでいるかを確認する必要があります。私が推測するように、データが UTF-8 でエンコードされている場合 (多かれ少なかれ世界中の地名を編集する必要があります)、書き込み操作は UTF-8 データを操作する操作である必要があり、書き込まれた結果を検査するときファイルに書き込む場合、検査ソフトウェアはデータを UTF-8 エンコードとしても読み取る必要があります。

于 2012-01-25T08:51:05.353 に答える