• 締切済み

コピーすると文字コードが変わっちゃう

プログラムを(ちなみにPHP)エディター(ちなみに秀丸)で入力して保存時にエンコードの種類を「Unicode(UTF-8)」で保存 もちろんプログラム(HTML/PHP記述)では <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> を指定しています 実行すると文字化けも起こらず正常にホームページが完成しました それをコピーして別のサーバーにアップすると正常にホームページが開かないんです 文字化けだけでなくソースが画面に表示されました そのソースも文字化けです コピー先をエディターで開くと「日本語(Shift-JIS)」になっていました コピー元は「Unicode(UTF-8)」です なぜでしょう? そもそも「Unicode(UTF-8)」をコピーするには単純にコピーしてはいけないのでしょうか? プログラムの量が結構あるのでこの「日本語(Shift-JIS)」を一括して「Unicode(UTF-8)」に保存できるようなツールはないのでしょうか?

みんなの回答

  • Lchan0211
  • ベストアンサー率64% (239/371)
回答No.2

コピー先のPHPの設定とコピー元のPHPの設定(php.ini)が異なっているため 問題が発生しているような気がします。 (phpソースファイル内容は、正しくUTF-8のままコピーされているのに、 それをコピー先のPHPが無理やりShift-JISと解釈して処理しようとして、 文字化けや誤動作を起こしているような気がします。) php.iniファイルの中でも、特に文字コードに関係する default_charset mbstring.http_input mbstring.http_output mbstring.internal_encoding mbstring.script_encoding の設定がコピー先とコピー元で一致しているか確認してみてください。 PHPのバージョンも合わせた方がよいでしょう。

  • nerimaok
  • ベストアンサー率34% (1125/3221)
回答No.1

http://www.vector.co.jp/vpack/filearea/win/util/text/conv/code/ コード変換のソフトは沢山有るので使える物を探してみてください。 サーバー間のコピーのツールで文字コード変換かかってませんか? テキストとして転送するとこの手のトラブルが発生する場合が有るのでバイナリとして転送かけるか、 一度tarとかzipとかでアーカイブ形式にまとめてから送り込むとか・・・

関連するQ&A