(お約束)ご利用は自己責任でお願いします
Dreamweaverでphpソースを開くときに文字化けしたり、大きなphpファイルだとフリーズしたりします。
これはDreamweaverが文字コードを解析しようとして失敗しているためだと思われます。
Dreamweaverは 基本的に metaタグで文字コードを判断しているようです。
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
とか
<meta http-equiv=”Content-Type” content=”text/html; charset=EUC-JP” />
とか。
HTMLソースなら必ずこのmetaタグを一個だけ書いてその文字コードで書いて保存しますが、PHPの場合、たとえばこんな風にmetaタグを二個書いてUTFで保存したりします。
mb_internal_encoding("UTF-8"); //内部文字エンコーディングをUTF-8に設定 $metaEUC = '<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" />'; $metaUTF = '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />'; if($encode){ print $metaEUC;} else{ print $metaUTF;}
こんな場合Dreamweaverは最初のmetaタグを見てEUCだと判断してしまい、文字化けするようです。
なのでその特性を逆手にとって、PHPの先頭行にコメントアウトしたメタタグを書いておけばDreamweaverはその文字コードで開いてくれます。
/* このテキストはUTF-8で保存 Dreamweaver対策でmetaタグを設定 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> */ mb_internal_encoding("UTF-8"); //内部文字エンコーディングをUTF-8に設定 $metaEUC = '<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" />'; $metaUTF = '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />'; if($encode){ print $metaEUC;} else{ print $metaUTF;}
コメント