今回、UTF-8からShift-Jisに自動で変換するコードを公開します。
基本的に携帯用サイトは、文字コードはShift-Jisです。
パソコン用サイトは、主流はUTF-8です。
そのため、両方のサイトで同じ情報を提供する場合、コードの変換が必要となります。
わざわざ、一つ一つファイルを開いて変換するとなるとめんどいので、PHPで適当に作ってみました。
<?php
define(BASE_DIR,'適当なディレクトリ名');
//ディレクトリ・ハンドルをオープン
$res_dir = opendir( BASE_DIR );
$file_arr = array();
//ディレクトリ内のファイル名を1つずつを取得
while( $file_name = readdir( $res_dir ) ){
//取得したファイル名を表示
array_push($file_arr, $file_name);
}
mkdir(BASE_DIR.'encoded');
foreach($file_arr as $value)
{
$temp = file_get_contents(BASE_DIR.$value,0);
$temp = mb_convert_encoding($temp, "SJIS", "UTF-8");
echo $temp;
$fp = @fopen(BASE_DIR. 'encoded\\'.$value, 'wb');
if (fwrite($fp, $temp) === FALSE){
print('ファイル書き込みに失敗しました');
}else{
print($value.'をファイルに書き込みました');
}
fclose($fp);
}
//ディレクトリ・ハンドルをクローズ
closedir( $res_dir );
?>
1. PHPコードをコピーして、PHPが実行できるディレクトリにファイルを適当な名前で保存します。
2. 適当なディレクトリ名を任意のディレクトリ名に変更
(windowsの場合、ディレクトリを指定する際、'\\'で区切ります(エスケープ文字))
3. 実行する。
任意のディレクトリの中にencodedって言うディレクトリが出来、その中に、Shift-Jisコードになって、
一覧が保存されます。
mb_convert_encodingの部分を他のに変えていただくと、どの文字コードにも変更でします!
0 件のコメント:
コメントを投稿